Avoid bug in the HP PA-RISC C compiler. (from Mikulas Patocka)
In 32-bit mode, the compiler truncates constants to 32-bit. We need LL suffix to avoid the truncation. This behavior is contrary to the C 99 standard which defines that constants that do not fit into long and unsigned long shall have long long type.
This commit is contained in:
parent
a005822186
commit
c93658f241
18 changed files with 686 additions and 683 deletions
|
@ -291,11 +291,11 @@ return SCPE_OK;
|
||||||
#define BOOT_SIZE (sizeof (boot_rom) / sizeof (t_uint64))
|
#define BOOT_SIZE (sizeof (boot_rom) / sizeof (t_uint64))
|
||||||
|
|
||||||
static const t_uint64 boot_rom[] = {
|
static const t_uint64 boot_rom[] = {
|
||||||
00762000001000 + U_CDR, /* RDSA CDR */
|
INT64_C(00762000001000) + U_CDR, /* RDSA CDR */
|
||||||
00544000000000 + BOOT_START + 4, /* LCHA *+3 */
|
INT64_C(00544000000000) + BOOT_START + 4, /* LCHA *+3 */
|
||||||
00544000000000, /* LCHA 0 */
|
INT64_C(00544000000000), /* LCHA 0 */
|
||||||
00021000000001, /* TTR 1 */
|
INT64_C(00021000000001), /* TTR 1 */
|
||||||
05000030000000, /* IOCT 3,,0 */
|
INT64_C(05000030000000), /* IOCT 3,,0 */
|
||||||
};
|
};
|
||||||
|
|
||||||
t_stat cdr_boot (int32 unitno, DEVICE *dptr)
|
t_stat cdr_boot (int32 unitno, DEVICE *dptr)
|
||||||
|
|
|
@ -114,8 +114,8 @@
|
||||||
|
|
||||||
/* Communications output */
|
/* Communications output */
|
||||||
|
|
||||||
#define COMO_LIN12B 0200000000000 /* line is 12b */
|
#define COMO_LIN12B INT64_C(0200000000000) /* line is 12b */
|
||||||
#define COMO_LINCTL 0100000000000 /* control msg */
|
#define COMO_LINCTL INT64_C(0100000000000) /* control msg */
|
||||||
#define COMO_GETLN(x) (((uint32) ((x) >> 24)) & 0777)
|
#define COMO_GETLN(x) (((uint32) ((x) >> 24)) & 0777)
|
||||||
#define COMO_CTLRST 00000 /* control reset */
|
#define COMO_CTLRST 00000 /* control reset */
|
||||||
#define COMO_BITRPT 03777 /* bit repeat */
|
#define COMO_BITRPT 03777 /* bit repeat */
|
||||||
|
@ -125,20 +125,20 @@
|
||||||
|
|
||||||
/* Status word (60b) */
|
/* Status word (60b) */
|
||||||
|
|
||||||
#define COMS_PCHK 004000000000000000000 /* prog check */
|
#define COMS_PCHK INT64_C(004000000000000000000) /* prog check */
|
||||||
#define COMS_DCHK 002000000000000000000 /* data check */
|
#define COMS_DCHK INT64_C(002000000000000000000) /* data check */
|
||||||
#define COMS_EXCC 001000000000000000000 /* exc cond */
|
#define COMS_EXCC INT64_C(001000000000000000000) /* exc cond */
|
||||||
#define COMS_MLNT 000040000000000000000 /* message length check */
|
#define COMS_MLNT INT64_C(000040000000000000000) /* message length check */
|
||||||
#define COMS_CHNH 000020000000000000000 /* channel hold */
|
#define COMS_CHNH INT64_C(000020000000000000000) /* channel hold */
|
||||||
#define COMS_CHNQ 000010000000000000000 /* channel queue full */
|
#define COMS_CHNQ INT64_C(000010000000000000000) /* channel queue full */
|
||||||
#define COMS_ITMO 000000100000000000000 /* interface timeout */
|
#define COMS_ITMO INT64_C(000000100000000000000) /* interface timeout */
|
||||||
#define COMS_DATR 000000004000000000000 /* data message ready */
|
#define COMS_DATR INT64_C(000000004000000000000) /* data message ready */
|
||||||
#define COMS_INBF 000000002000000000000 /* input buffer free */
|
#define COMS_INBF INT64_C(000000002000000000000) /* input buffer free */
|
||||||
#define COMS_SVCR 000000001000000000000 /* service message ready */
|
#define COMS_SVCR INT64_C(000000001000000000000) /* service message ready */
|
||||||
#define COMS_PALL 000000000000000000000
|
#define COMS_PALL INT64_C(000000000000000000000)
|
||||||
#define COMS_DALL 000000000000000000000
|
#define COMS_DALL INT64_C(000000000000000000000)
|
||||||
#define COMS_EALL 000000000000000000000
|
#define COMS_EALL INT64_C(000000000000000000000)
|
||||||
#define COMS_DYN 000000007000000000000
|
#define COMS_DYN INT64_C(000000007000000000000)
|
||||||
|
|
||||||
/* Report variables */
|
/* Report variables */
|
||||||
|
|
||||||
|
@ -558,7 +558,7 @@ switch (com_sta) { /* case on state */
|
||||||
|
|
||||||
case CHSL_WRS|CHSL_2ND: /* write first word */
|
case CHSL_WRS|CHSL_2ND: /* write first word */
|
||||||
dat = com_getob (com_ch); /* get word? */
|
dat = com_getob (com_ch); /* get word? */
|
||||||
if (dat == 0777777777777) { /* turn on? */
|
if (dat == INT64_C(0777777777777)) { /* turn on? */
|
||||||
com_enab = 1; /* enable 7750 */
|
com_enab = 1; /* enable 7750 */
|
||||||
com_msgn = 0; /* init message # */
|
com_msgn = 0; /* init message # */
|
||||||
com_end (com_ch, 0, CHSL_WRS|CHSL_4TH); /* end, last state */
|
com_end (com_ch, 0, CHSL_WRS|CHSL_4TH); /* end, last state */
|
||||||
|
|
|
@ -975,7 +975,7 @@ while (reason == SCPE_OK) { /* loop until error */
|
||||||
if (!Read (ea, &SR))
|
if (!Read (ea, &SR))
|
||||||
break;
|
break;
|
||||||
AC = (AC & AC_S) | ((AC >> 6) & 0017777777777) |
|
AC = (AC & AC_S) | ((AC >> 6) & 0017777777777) |
|
||||||
(SR & 0770000000000);
|
(SR & INT64_C(0770000000000));
|
||||||
sc--;
|
sc--;
|
||||||
}
|
}
|
||||||
if ((sc == 0) && (IR & INST_T_CXR1))
|
if ((sc == 0) && (IR & INST_T_CXR1))
|
||||||
|
|
|
@ -124,25 +124,25 @@ typedef struct {
|
||||||
|
|
||||||
/* Integer */
|
/* Integer */
|
||||||
|
|
||||||
#define DMASK 0777777777777 /* data mask */
|
#define DMASK INT64_C(0777777777777) /* data mask */
|
||||||
#define SIGN 0400000000000 /* sign */
|
#define SIGN INT64_C(0400000000000) /* sign */
|
||||||
#define MMASK 0377777777777 /* magnitude mask */
|
#define MMASK INT64_C(0377777777777) /* magnitude mask */
|
||||||
#define LMASK 0777777000000 /* left mask */
|
#define LMASK INT64_C(0777777000000) /* left mask */
|
||||||
#define RMASK 0000000777777 /* right mask */
|
#define RMASK INT64_C(0000000777777) /* right mask */
|
||||||
#define PMASK 0700000000000 /* prefix */
|
#define PMASK INT64_C(0700000000000) /* prefix */
|
||||||
#define XMASK 0077777000000 /* decrement */
|
#define XMASK INT64_C(0077777000000) /* decrement */
|
||||||
#define TMASK 0000000700000 /* tag */
|
#define TMASK INT64_C(0000000700000) /* tag */
|
||||||
#define AMASK 0000000077777 /* address */
|
#define AMASK INT64_C(0000000077777) /* address */
|
||||||
#define SCMASK 0000000000377 /* shift count mask */
|
#define SCMASK INT64_C(0000000000377) /* shift count mask */
|
||||||
#define B1 0200000000000 /* bit 1 */
|
#define B1 INT64_C(0200000000000) /* bit 1 */
|
||||||
#define B9 0000400000000 /* bit 9 */
|
#define B9 INT64_C(0000400000000) /* bit 9 */
|
||||||
|
|
||||||
/* Accumulator is actually 38b wide */
|
/* Accumulator is actually 38b wide */
|
||||||
|
|
||||||
#define AC_S 02000000000000 /* sign */
|
#define AC_S INT64_C(02000000000000) /* sign */
|
||||||
#define AC_Q 01000000000000 /* Q */
|
#define AC_Q INT64_C(01000000000000) /* Q */
|
||||||
#define AC_P 00400000000000 /* P */
|
#define AC_P INT64_C(00400000000000) /* P */
|
||||||
#define AC_MMASK 01777777777777 /* Q+P+magnitude */
|
#define AC_MMASK INT64_C(01777777777777) /* Q+P+magnitude */
|
||||||
|
|
||||||
/* Floating point */
|
/* Floating point */
|
||||||
|
|
||||||
|
@ -159,8 +159,8 @@ typedef struct {
|
||||||
|
|
||||||
/* Instruction format */
|
/* Instruction format */
|
||||||
|
|
||||||
#define INST_T_DEC 0300000000000 /* if nz, takes decr */
|
#define INST_T_DEC INT64_C(0300000000000) /* if nz, takes decr */
|
||||||
#define INST_T_CXR1 0000000100000 /* if nz, update XR1 */
|
#define INST_T_CXR1 INT64_C(0000000100000) /* if nz, update XR1 */
|
||||||
#define INST_V_OPD 33 /* decrement opcode */
|
#define INST_V_OPD 33 /* decrement opcode */
|
||||||
#define INST_M_OPD 07
|
#define INST_M_OPD 07
|
||||||
#define INST_V_DEC 18 /* decrement */
|
#define INST_V_DEC 18 /* decrement */
|
||||||
|
@ -419,8 +419,8 @@ typedef struct {
|
||||||
#define CHF_V_LCC 30 /* loop ctrl counter */
|
#define CHF_V_LCC 30 /* loop ctrl counter */
|
||||||
#define CHF_M_LCC 077
|
#define CHF_M_LCC 077
|
||||||
|
|
||||||
#define CHF_CLR_7909 07775000177 /* 7909 clear flags */
|
#define CHF_CLR_7909 INT64_C(07775000177) /* 7909 clear flags */
|
||||||
#define CHF_SDC_7909 07777600000 /* 7909 SDC flags */
|
#define CHF_SDC_7909 INT64_C(07777600000) /* 7909 SDC flags */
|
||||||
|
|
||||||
/* Channel characteristics (in dev.flags) */
|
/* Channel characteristics (in dev.flags) */
|
||||||
|
|
||||||
|
|
|
@ -143,12 +143,12 @@
|
||||||
/* Track/record structure */
|
/* Track/record structure */
|
||||||
|
|
||||||
#define THA2 0 /* home address 2 */
|
#define THA2 0 /* home address 2 */
|
||||||
#define HA2_MASK 0777700000000 /* two chars checked */
|
#define HA2_MASK INT64_C(0777700000000) /* two chars checked */
|
||||||
#define T1STREC 1 /* start of records */
|
#define T1STREC 1 /* start of records */
|
||||||
#define RLNT 0 /* record length */
|
#define RLNT 0 /* record length */
|
||||||
#define RADDR 1 /* record address */
|
#define RADDR 1 /* record address */
|
||||||
#define RDATA 2 /* start of data */
|
#define RDATA 2 /* start of data */
|
||||||
#define REC_MASK 0171717177777 /* 4 digits, 2 chars */
|
#define REC_MASK INT64_C(0171717177777) /* 4 digits, 2 chars */
|
||||||
|
|
||||||
/* Command word (60b) - 10 BCD digits */
|
/* Command word (60b) - 10 BCD digits */
|
||||||
|
|
||||||
|
@ -167,27 +167,27 @@
|
||||||
|
|
||||||
/* Status word (60b) */
|
/* Status word (60b) */
|
||||||
|
|
||||||
#define DSKS_PCHK 004000000000000000000 /* prog check */
|
#define DSKS_PCHK INT64_C(004000000000000000000) /* prog check */
|
||||||
#define DSKS_DCHK 002000000000000000000 /* data check */
|
#define DSKS_DCHK INT64_C(002000000000000000000) /* data check */
|
||||||
#define DSKS_EXCC 001000000000000000000 /* exc cond */
|
#define DSKS_EXCC INT64_C(001000000000000000000) /* exc cond */
|
||||||
#define DSKS_INVS 000200000000000000000 /* invalid seq */
|
#define DSKS_INVS INT64_C(000200000000000000000) /* invalid seq */
|
||||||
#define DSKS_INVC 000040000000000000000 /* invalid opcode */
|
#define DSKS_INVC INT64_C(000040000000000000000) /* invalid opcode */
|
||||||
#define DSKS_FMTC 000020000000000000000 /* format check */
|
#define DSKS_FMTC INT64_C(000020000000000000000) /* format check */
|
||||||
#define DSKS_NRCF 000010000000000000000 /* no record found */
|
#define DSKS_NRCF INT64_C(000010000000000000000) /* no record found */
|
||||||
#define DSKS_INVA 000002000000000000000 /* invalid address */
|
#define DSKS_INVA INT64_C(000002000000000000000) /* invalid address */
|
||||||
#define DSKS_RSPC 000000400000000000000 /* response check */
|
#define DSKS_RSPC INT64_C(000000400000000000000) /* response check */
|
||||||
#define DSKS_CMPC 000000200000000000000 /* compare check */
|
#define DSKS_CMPC INT64_C(000000200000000000000) /* compare check */
|
||||||
#define DSKS_PARC 000000100000000000000 /* parity check */
|
#define DSKS_PARC INT64_C(000000100000000000000) /* parity check */
|
||||||
#define DSKS_ACCI 000000020000000000000 /* access inoperative */
|
#define DSKS_ACCI INT64_C(000000020000000000000) /* access inoperative */
|
||||||
#define DSKS_ACCN 000000004000000000000 /* access not ready */
|
#define DSKS_ACCN INT64_C(000000004000000000000) /* access not ready */
|
||||||
#define DSKS_DSKE 000000002000000000000 /* disk error */
|
#define DSKS_DSKE INT64_C(000000002000000000000) /* disk error */
|
||||||
#define DSKS_FILE 000000001000000000000 /* file error */
|
#define DSKS_FILE INT64_C(000000001000000000000) /* file error */
|
||||||
#define DSKS_6B 000000000040000000000 /* six bit mode */
|
#define DSKS_6B INT64_C(000000000040000000000) /* six bit mode */
|
||||||
#define DSKS_ATN0 000000000002000000000 /* attention start */
|
#define DSKS_ATN0 INT64_C(000000000002000000000) /* attention start */
|
||||||
#define DSKS_PALL 000777000000000000000
|
#define DSKS_PALL INT64_C(000777000000000000000)
|
||||||
#define DSKS_DALL 000000740000000000000
|
#define DSKS_DALL INT64_C(000000740000000000000)
|
||||||
#define DSKS_EALL 000000037000000000000
|
#define DSKS_EALL INT64_C(000000037000000000000)
|
||||||
#define DSKS_ALLERR 007777777000000000000
|
#define DSKS_ALLERR INT64_C(007777777000000000000)
|
||||||
|
|
||||||
/* Commands - opcode 0 */
|
/* Commands - opcode 0 */
|
||||||
|
|
||||||
|
@ -210,7 +210,7 @@
|
||||||
|
|
||||||
/* CTSS record structure */
|
/* CTSS record structure */
|
||||||
|
|
||||||
#define CTSS_HA2 0676767676767 /* =HXXXXXX */
|
#define CTSS_HA2 INT64_C(0676767676767) /* =HXXXXXX */
|
||||||
#define CTSS_RLNT 435 /* data record */
|
#define CTSS_RLNT 435 /* data record */
|
||||||
#define CTSS_D1LNT 31 /* padding */
|
#define CTSS_D1LNT 31 /* padding */
|
||||||
#define CTSS_D2LNT 14
|
#define CTSS_D2LNT 14
|
||||||
|
@ -485,7 +485,7 @@ else {
|
||||||
|
|
||||||
case CHSL_CTL: /* control */
|
case CHSL_CTL: /* control */
|
||||||
dsk_cmd = val << 24;
|
dsk_cmd = val << 24;
|
||||||
if (val & 0100000000000) { /* need 2nd word? */
|
if (val & INT64_C(0100000000000)) { /* need 2nd word? */
|
||||||
ch_req |= REQ_CH (ch); /* req ch for 2nd */
|
ch_req |= REQ_CH (ch); /* req ch for 2nd */
|
||||||
dsk_sta = CHSL_CTL|CHSL_2ND; /* next state */
|
dsk_sta = CHSL_CTL|CHSL_2ND; /* next state */
|
||||||
return SCPE_OK;
|
return SCPE_OK;
|
||||||
|
|
|
@ -130,8 +130,8 @@ const t_uint64 bit_masks[36] = {
|
||||||
0000010000000, 0000020000000, 0000040000000,
|
0000010000000, 0000020000000, 0000040000000,
|
||||||
0000100000000, 0000200000000, 0000400000000,
|
0000100000000, 0000200000000, 0000400000000,
|
||||||
0001000000000, 0002000000000, 0004000000000,
|
0001000000000, 0002000000000, 0004000000000,
|
||||||
0010000000000, 0020000000000, 0040000000000,
|
INT64_C(0010000000000), INT64_C(0020000000000), INT64_C(0040000000000),
|
||||||
0100000000000, 0200000000000, 0400000000000
|
INT64_C(0100000000000), INT64_C(0200000000000), INT64_C(0400000000000)
|
||||||
};
|
};
|
||||||
|
|
||||||
const DEV_CHAR dev_table[] = {
|
const DEV_CHAR dev_table[] = {
|
||||||
|
@ -981,7 +981,7 @@ if (ch_dev[ch].flags & DEV_7909) { /* 7909 */
|
||||||
case CH9_ICCA:
|
case CH9_ICCA:
|
||||||
csel = CH9D_COND (ch_wc[ch]); /* get C */
|
csel = CH9D_COND (ch_wc[ch]); /* get C */
|
||||||
if (csel == 0) ch_ar[ch] = /* C = 0? read SMS */
|
if (csel == 0) ch_ar[ch] = /* C = 0? read SMS */
|
||||||
(ch_ar[ch] & 0777777770000) | ((t_uint64) ch_sms[ch]);
|
(ch_ar[ch] & INT64_C(0777777770000)) | ((t_uint64) ch_sms[ch]);
|
||||||
else if (csel < 7) { /* else read cond cntr */
|
else if (csel < 7) { /* else read cond cntr */
|
||||||
sc = 6 * (6 - csel);
|
sc = 6 * (6 - csel);
|
||||||
ch_ar[ch] = (ch_ar[ch] & ~(((t_uint64) 077) << sc)) |
|
ch_ar[ch] = (ch_ar[ch] & ~(((t_uint64) 077) << sc)) |
|
||||||
|
|
|
@ -844,11 +844,11 @@ return sim_tape_attach (uptr, cptr);
|
||||||
#define BOOT_START 01000
|
#define BOOT_START 01000
|
||||||
|
|
||||||
static const t_uint64 boot_rom[5] = {
|
static const t_uint64 boot_rom[5] = {
|
||||||
0076200000000 + U_MTBIN - 1, /* RDS MT_binary */
|
INT64_C(0076200000000) + U_MTBIN - 1, /* RDS MT_binary */
|
||||||
0054000000000 + BOOT_START + 4, /* RCHA *+3 */
|
INT64_C(0054000000000) + BOOT_START + 4, /* RCHA *+3 */
|
||||||
0054400000000, /* LCHA 0 */
|
INT64_C(0054400000000), /* LCHA 0 */
|
||||||
0002100000001, /* TTR 1 */
|
INT64_C(0002100000001), /* TTR 1 */
|
||||||
0500003000000, /* IOCT 0,,3 */
|
INT64_C(0500003000000), /* IOCT 0,,3 */
|
||||||
};
|
};
|
||||||
|
|
||||||
t_stat mt_boot (int32 unitno, DEVICE *dptr)
|
t_stat mt_boot (int32 unitno, DEVICE *dptr)
|
||||||
|
|
|
@ -142,23 +142,23 @@ return SCPE_NOFNC;
|
||||||
|
|
||||||
#define I_V_FL 39 /* inst class */
|
#define I_V_FL 39 /* inst class */
|
||||||
#define I_M_FL 017 /* class mask */
|
#define I_M_FL 017 /* class mask */
|
||||||
#define I_NOP 0000000000000000 /* no operand */
|
#define I_NOP INT64_C(0000000000000000) /* no operand */
|
||||||
#define I_MXR 0010000000000000 /* addr(tag) */
|
#define I_MXR INT64_C(0010000000000000) /* addr(tag) */
|
||||||
#define I_MXN 0020000000000000 /* *addr(tag) */
|
#define I_MXN INT64_C(0020000000000000) /* *addr(tag) */
|
||||||
#define I_MXV 0030000000000000 /* var mul/div */
|
#define I_MXV INT64_C(0030000000000000) /* var mul/div */
|
||||||
#define I_MXC 0040000000000000 /* convert */
|
#define I_MXC INT64_C(0040000000000000) /* convert */
|
||||||
#define I_DNP 0050000000000000 /* decr, no oper */
|
#define I_DNP INT64_C(0050000000000000) /* decr, no oper */
|
||||||
#define I_DEC 0060000000000000 /* decrement */
|
#define I_DEC INT64_C(0060000000000000) /* decrement */
|
||||||
#define I_SNS 0070000000000000 /* sense */
|
#define I_SNS INT64_C(0070000000000000) /* sense */
|
||||||
#define I_IMM 0100000000000000 /* 18b immediate */
|
#define I_IMM INT64_C(0100000000000000) /* 18b immediate */
|
||||||
#define I_TAG 0110000000000000 /* tag only */
|
#define I_TAG INT64_C(0110000000000000) /* tag only */
|
||||||
#define I_IOX 0120000000000000 /* IO channel */
|
#define I_IOX INT64_C(0120000000000000) /* IO channel */
|
||||||
#define I_TCH 0130000000000000 /* transfer channel */
|
#define I_TCH INT64_C(0130000000000000) /* transfer channel */
|
||||||
#define I_I9N 0140000000000000 /* 7909 with nostore */
|
#define I_I9N INT64_C(0140000000000000) /* 7909 with nostore */
|
||||||
#define I_I9S 0150000000000000 /* 7909 */
|
#define I_I9S INT64_C(0150000000000000) /* 7909 */
|
||||||
#define I_SPX 0160000000000000 /* SPU, SPR */
|
#define I_SPX INT64_C(0160000000000000) /* SPU, SPR */
|
||||||
#define IFAKE_7607 0001000000000000 /* fake op extensions */
|
#define IFAKE_7607 INT64_C(0001000000000000) /* fake op extensions */
|
||||||
#define IFAKE_7909 0002000000000000
|
#define IFAKE_7909 INT64_C(0002000000000000)
|
||||||
#define DFAKE (DMASK|IFAKE_7607|IFAKE_7909)
|
#define DFAKE (DMASK|IFAKE_7607|IFAKE_7909)
|
||||||
#define I_N_NOP 000
|
#define I_N_NOP 000
|
||||||
#define I_N_MXR 001
|
#define I_N_MXR 001
|
||||||
|
@ -183,14 +183,14 @@ return SCPE_NOFNC;
|
||||||
#define INST_P_PNT 4 /* print if nz, term */
|
#define INST_P_PNT 4 /* print if nz, term */
|
||||||
|
|
||||||
static const t_uint64 masks[15] = {
|
static const t_uint64 masks[15] = {
|
||||||
03777700000000, 03777700000000,
|
INT64_C(03777700000000), INT64_C(03777700000000),
|
||||||
03777700000000, 03777700000000,
|
INT64_C(03777700000000), INT64_C(03777700000000),
|
||||||
03777400000000, 03700000000000,
|
INT64_C(03777400000000), INT64_C(03700000000000),
|
||||||
03700000000000, 03777700077777,
|
INT64_C(03700000000000), INT64_C(03777700077777),
|
||||||
03777700000000, 03777700000000,
|
INT64_C(03777700000000), INT64_C(03777700000000),
|
||||||
03700000200000, 03700000200000,
|
INT64_C(03700000200000), INT64_C(03700000200000),
|
||||||
03760000200000, 03740000200000,
|
INT64_C(03760000200000), INT64_C(03740000200000),
|
||||||
03777700077760 };
|
INT64_C(03777700077760) };
|
||||||
|
|
||||||
static const uint32 fld_max[15][3] = { /* addr,tag,decr limit */
|
static const uint32 fld_max[15][3] = { /* addr,tag,decr limit */
|
||||||
{ INST_M_ADDR, INST_M_TAG, 0 },
|
{ INST_M_ADDR, INST_M_TAG, 0 },
|
||||||
|
@ -406,174 +406,174 @@ static const char *opcode[] = {
|
||||||
};
|
};
|
||||||
|
|
||||||
static const t_uint64 opc_v[] = {
|
static const t_uint64 opc_v[] = {
|
||||||
0100000000000+I_DEC, 0200000000000+I_DEC, 0300000000000+I_DEC,
|
INT64_C(0100000000000)+I_DEC, INT64_C(0200000000000)+I_DEC, INT64_C(0300000000000)+I_DEC,
|
||||||
0500000000000+I_DNP, 0600000000000+I_DEC, 0700000000000+I_DEC,
|
INT64_C(0500000000000)+I_DNP, INT64_C(0600000000000)+I_DEC, INT64_C(0700000000000)+I_DEC,
|
||||||
0000000000000+I_MXN, 0002000000000+I_MXN, 0002100000000+I_MXN,
|
INT64_C(0000000000000)+I_MXN, INT64_C(0002000000000)+I_MXN, INT64_C(0002100000000)+I_MXN,
|
||||||
|
|
||||||
0076000000000+I_SNS, 0076000000001+I_SNS, 0076000000002+I_SNS,
|
INT64_C(0076000000000)+I_SNS, INT64_C(0076000000001)+I_SNS, INT64_C(0076000000002)+I_SNS,
|
||||||
0076000000003+I_SNS, 0076000000004+I_SNS, 0076000000005+I_SNS,
|
INT64_C(0076000000003)+I_SNS, INT64_C(0076000000004)+I_SNS, INT64_C(0076000000005)+I_SNS,
|
||||||
0076000000006+I_SNS, 0076000000007+I_SNS, 0076000000010+I_SNS,
|
INT64_C(0076000000006)+I_SNS, INT64_C(0076000000007)+I_SNS, INT64_C(0076000000010)+I_SNS,
|
||||||
0076000000011+I_SNS, 0076000000012+I_SNS, 0076000000014+I_SNS,
|
INT64_C(0076000000011)+I_SNS, INT64_C(0076000000012)+I_SNS, INT64_C(0076000000014)+I_SNS,
|
||||||
0076000000016+I_SNS, 0076000000140+I_SNS, 0076000000141+I_SNS,
|
INT64_C(0076000000016)+I_SNS, INT64_C(0076000000140)+I_SNS, INT64_C(0076000000141)+I_SNS,
|
||||||
0076000000142+I_SNS, 0076000000143+I_SNS, 0076000000144+I_SNS,
|
INT64_C(0076000000142)+I_SNS, INT64_C(0076000000143)+I_SNS, INT64_C(0076000000144)+I_SNS,
|
||||||
0076000000161+I_SNS, 0076000000162+I_SNS, 0076000000163+I_SNS,
|
INT64_C(0076000000161)+I_SNS, INT64_C(0076000000162)+I_SNS, INT64_C(0076000000163)+I_SNS,
|
||||||
0076000000164+I_SNS, 0076000000165+I_SNS, 0076000000166+I_SNS,
|
INT64_C(0076000000164)+I_SNS, INT64_C(0076000000165)+I_SNS, INT64_C(0076000000166)+I_SNS,
|
||||||
0076000001000+I_SNS, 0076000002000+I_SNS, 0076000003000+I_SNS,
|
INT64_C(0076000001000)+I_SNS, INT64_C(0076000002000)+I_SNS, INT64_C(0076000003000)+I_SNS,
|
||||||
0076000004000+I_SNS, 0076000005000+I_SNS, 0076000006000+I_SNS,
|
INT64_C(0076000004000)+I_SNS, INT64_C(0076000005000)+I_SNS, INT64_C(0076000006000)+I_SNS,
|
||||||
0076000007000+I_SNS, 0076000010000+I_SNS,
|
INT64_C(0076000007000)+I_SNS, INT64_C(0076000010000)+I_SNS,
|
||||||
0076000001350+I_SNS, 0076000002350+I_SNS, 0076000003350+I_SNS,
|
INT64_C(0076000001350)+I_SNS, INT64_C(0076000002350)+I_SNS, INT64_C(0076000003350)+I_SNS,
|
||||||
0076000004350+I_SNS, 0076000005350+I_SNS, 0076000006350+I_SNS,
|
INT64_C(0076000004350)+I_SNS, INT64_C(0076000005350)+I_SNS, INT64_C(0076000006350)+I_SNS,
|
||||||
0076000007350+I_SNS, 0076000010350+I_SNS,
|
INT64_C(0076000007350)+I_SNS, INT64_C(0076000010350)+I_SNS,
|
||||||
0076000001352+I_SNS, 0076000002352+I_SNS, 0076000003352+I_SNS,
|
INT64_C(0076000001352)+I_SNS, INT64_C(0076000002352)+I_SNS, INT64_C(0076000003352)+I_SNS,
|
||||||
0076000004352+I_SNS, 0076000005352+I_SNS, 0076000006352+I_SNS,
|
INT64_C(0076000004352)+I_SNS, INT64_C(0076000005352)+I_SNS, INT64_C(0076000006352)+I_SNS,
|
||||||
0076000007352+I_SNS, 0076000010352+I_SNS,
|
INT64_C(0076000007352)+I_SNS, INT64_C(0076000010352)+I_SNS,
|
||||||
0076000001340+I_SNS, 0076000002340+I_SNS, 0076000003340+I_SNS,
|
INT64_C(0076000001340)+I_SNS, INT64_C(0076000002340)+I_SNS, INT64_C(0076000003340)+I_SNS,
|
||||||
0076000004340+I_SNS, 0076000005340+I_SNS, 0076000006340+I_SNS,
|
INT64_C(0076000004340)+I_SNS, INT64_C(0076000005340)+I_SNS, INT64_C(0076000006340)+I_SNS,
|
||||||
0076000007340+I_SNS, 0076000010340+I_SNS,
|
INT64_C(0076000007340)+I_SNS, INT64_C(0076000010340)+I_SNS,
|
||||||
0076000001360+I_SNS, 0076000002360+I_SNS, 0076000003360+I_SNS,
|
INT64_C(0076000001360)+I_SNS, INT64_C(0076000002360)+I_SNS, INT64_C(0076000003360)+I_SNS,
|
||||||
0076000004360+I_SNS, 0076000005360+I_SNS, 0076000006360+I_SNS,
|
INT64_C(0076000004360)+I_SNS, INT64_C(0076000005360)+I_SNS, INT64_C(0076000006360)+I_SNS,
|
||||||
0076000007360+I_SNS, 0076000010360+I_SNS,
|
INT64_C(0076000007360)+I_SNS, INT64_C(0076000010360)+I_SNS,
|
||||||
0076000001360+I_SNS, 0076000002360+I_SNS, 0076000003360+I_SNS,
|
INT64_C(0076000001360)+I_SNS, INT64_C(0076000002360)+I_SNS, INT64_C(0076000003360)+I_SNS,
|
||||||
0076000004360+I_SNS, 0076000005360+I_SNS, 0076000006360+I_SNS,
|
INT64_C(0076000004360)+I_SNS, INT64_C(0076000005360)+I_SNS, INT64_C(0076000006360)+I_SNS,
|
||||||
0076000007360+I_SNS, 0076000010360+I_SNS,
|
INT64_C(0076000007360)+I_SNS, INT64_C(0076000010360)+I_SNS,
|
||||||
|
|
||||||
0002200000000+I_MXN, 0002400000000+I_MXN,
|
INT64_C(0002200000000)+I_MXN, INT64_C(0002400000000)+I_MXN,
|
||||||
0002600000000+I_MXN, 0002700000000+I_MXN,
|
INT64_C(0002600000000)+I_MXN, INT64_C(0002700000000)+I_MXN,
|
||||||
0003000000000+I_MXN, 0003100000000+I_MXN,
|
INT64_C(0003000000000)+I_MXN, INT64_C(0003100000000)+I_MXN,
|
||||||
0003200000000+I_MXN, 0003300000000+I_MXN,
|
INT64_C(0003200000000)+I_MXN, INT64_C(0003300000000)+I_MXN,
|
||||||
0004000000000+I_MXN, 0004100000000+I_NOP, 0004200000000+I_MXR,
|
INT64_C(0004000000000)+I_MXN, INT64_C(0004100000000)+I_NOP, INT64_C(0004200000000)+I_MXR,
|
||||||
0004300000000+I_NOP, 0004400000000+I_NOP, 0004600000000+I_MXR,
|
INT64_C(0004300000000)+I_NOP, INT64_C(0004400000000)+I_NOP, INT64_C(0004600000000)+I_MXR,
|
||||||
0005100000000+I_IMM, 0005400000000+I_IMM, 0005500000000+I_IMM,
|
INT64_C(0005100000000)+I_IMM, INT64_C(0005400000000)+I_IMM, INT64_C(0005500000000)+I_IMM,
|
||||||
0005600000000+I_IMM, 0005700000000+I_IMM,
|
INT64_C(0005600000000)+I_IMM, INT64_C(0005700000000)+I_IMM,
|
||||||
0006000000000+I_MXN, 0006100000000+I_MXN, 0006200000000+I_MXN,
|
INT64_C(0006000000000)+I_MXN, INT64_C(0006100000000)+I_MXN, INT64_C(0006200000000)+I_MXN,
|
||||||
0006300000000+I_MXN, 0006400000000+I_MXN, 0006500000000+I_MXN,
|
INT64_C(0006300000000)+I_MXN, INT64_C(0006400000000)+I_MXN, INT64_C(0006500000000)+I_MXN,
|
||||||
0006600000000+I_MXN, 0006700000000+I_MXN, 0007400000000+I_MXR,
|
INT64_C(0006600000000)+I_MXN, INT64_C(0006700000000)+I_MXN, INT64_C(0007400000000)+I_MXR,
|
||||||
0010000000000+I_MXN, 0011400000000+I_MXC, 0012000000000+I_MXN,
|
INT64_C(0010000000000)+I_MXN, INT64_C(0011400000000)+I_MXC, INT64_C(0012000000000)+I_MXN,
|
||||||
0013100000000+I_NOP, 0014000000000+I_MXN,
|
INT64_C(0013100000000)+I_NOP, INT64_C(0014000000000)+I_MXN,
|
||||||
0016100000000+I_MXN, 0016200000000+I_MXN,
|
INT64_C(0016100000000)+I_MXN, INT64_C(0016200000000)+I_MXN,
|
||||||
0020000000000+I_MXN, 0020400000000+I_MXV, 0020500000000+I_MXV,
|
INT64_C(0020000000000)+I_MXN, INT64_C(0020400000000)+I_MXV, INT64_C(0020500000000)+I_MXV,
|
||||||
0022000000000+I_MXN, 0022100000000+I_MXN,
|
INT64_C(0022000000000)+I_MXN, INT64_C(0022100000000)+I_MXN,
|
||||||
0022400000000+I_MXV, 0022500000000+I_MXV,
|
INT64_C(0022400000000)+I_MXV, INT64_C(0022500000000)+I_MXV,
|
||||||
0022600000000+I_MXV, 0022700000000+I_MXV,
|
INT64_C(0022600000000)+I_MXV, INT64_C(0022700000000)+I_MXV,
|
||||||
0024000000000+I_MXN, 0024100000000+I_MXN,
|
INT64_C(0024000000000)+I_MXN, INT64_C(0024100000000)+I_MXN,
|
||||||
0026000000000+I_MXN, 0026100000000+I_MXN,
|
INT64_C(0026000000000)+I_MXN, INT64_C(0026100000000)+I_MXN,
|
||||||
0030000000000+I_MXN, 0030100000000+I_MXN,
|
INT64_C(0030000000000)+I_MXN, INT64_C(0030100000000)+I_MXN,
|
||||||
0030200000000+I_MXN, 0030300000000+I_MXN,
|
INT64_C(0030200000000)+I_MXN, INT64_C(0030300000000)+I_MXN,
|
||||||
0030400000000+I_MXN, 0030500000000+I_MXN,
|
INT64_C(0030400000000)+I_MXN, INT64_C(0030500000000)+I_MXN,
|
||||||
0030600000000+I_MXN, 0030700000000+I_MXN,
|
INT64_C(0030600000000)+I_MXN, INT64_C(0030700000000)+I_MXN,
|
||||||
0032000000000+I_MXN, 0032200000000+I_MXN,
|
INT64_C(0032000000000)+I_MXN, INT64_C(0032200000000)+I_MXN,
|
||||||
0034000000000+I_MXN, 0036100000000+I_MXN,
|
INT64_C(0034000000000)+I_MXN, INT64_C(0036100000000)+I_MXN,
|
||||||
0040000000000+I_MXN, 0040100000000+I_MXN,
|
INT64_C(0040000000000)+I_MXN, INT64_C(0040100000000)+I_MXN,
|
||||||
0040200000000+I_MXN, 0440000000000+I_MXN,
|
INT64_C(0040200000000)+I_MXN, INT64_C(0440000000000)+I_MXN,
|
||||||
0042000000000+I_NOP, 0044000000000+I_MXN, 0044100000000+I_MXN,
|
INT64_C(0042000000000)+I_NOP, INT64_C(0044000000000)+I_MXN, INT64_C(0044100000000)+I_MXN,
|
||||||
0044200000000+I_MXN, 0044300000000+I_MXN, 0044400000000+I_MXN,
|
INT64_C(0044200000000)+I_MXN, INT64_C(0044300000000)+I_MXN, INT64_C(0044400000000)+I_MXN,
|
||||||
0044500000000+I_MXN, 0044600000000+I_MXN,
|
INT64_C(0044500000000)+I_MXN, INT64_C(0044600000000)+I_MXN,
|
||||||
0050000000000+I_MXN, 0050200000000+I_MXN,
|
INT64_C(0050000000000)+I_MXN, INT64_C(0050200000000)+I_MXN,
|
||||||
0052000000000+I_MXN, 0052200000000+I_MXN,
|
INT64_C(0052000000000)+I_MXN, INT64_C(0052200000000)+I_MXN,
|
||||||
0053400000000+I_MXR, 0053500000000+I_MXR,
|
INT64_C(0053400000000)+I_MXR, INT64_C(0053500000000)+I_MXR,
|
||||||
0054000000000+I_MXN, 0054100000000+I_MXN,
|
INT64_C(0054000000000)+I_MXN, INT64_C(0054100000000)+I_MXN,
|
||||||
0054200000000+I_MXN, 0054300000000+I_MXN,
|
INT64_C(0054200000000)+I_MXN, INT64_C(0054300000000)+I_MXN,
|
||||||
0054400000000+I_MXN, 0054500000000+I_MXN,
|
INT64_C(0054400000000)+I_MXN, INT64_C(0054500000000)+I_MXN,
|
||||||
0054600000000+I_MXN, 0054700000000+I_MXN,
|
INT64_C(0054600000000)+I_MXN, INT64_C(0054700000000)+I_MXN,
|
||||||
0054000000000+I_MXN, 0054100000000+I_MXN,
|
INT64_C(0054000000000)+I_MXN, INT64_C(0054100000000)+I_MXN,
|
||||||
0054200000000+I_MXN, 0054300000000+I_MXN,
|
INT64_C(0054200000000)+I_MXN, INT64_C(0054300000000)+I_MXN,
|
||||||
0054400000000+I_MXN, 0054500000000+I_MXN,
|
INT64_C(0054400000000)+I_MXN, INT64_C(0054500000000)+I_MXN,
|
||||||
0054600000000+I_MXN, 0054700000000+I_MXN,
|
INT64_C(0054600000000)+I_MXN, INT64_C(0054700000000)+I_MXN,
|
||||||
0056000000000+I_MXN, 0056400000000+I_MXN,
|
INT64_C(0056000000000)+I_MXN, INT64_C(0056400000000)+I_MXN,
|
||||||
0060000000000+I_MXN, 0060100000000+I_MXN, 0060200000000+I_MXN,
|
INT64_C(0060000000000)+I_MXN, INT64_C(0060100000000)+I_MXN, INT64_C(0060200000000)+I_MXN,
|
||||||
0060400000000+I_MXN, 0062100000000+I_MXN, 0062200000000+I_MXN,
|
INT64_C(0060400000000)+I_MXN, INT64_C(0062100000000)+I_MXN, INT64_C(0062200000000)+I_MXN,
|
||||||
0062500000000+I_MXN, 0063000000000+I_MXN,
|
INT64_C(0062500000000)+I_MXN, INT64_C(0063000000000)+I_MXN,
|
||||||
0063400000000+I_MXR, 0063600000000+I_MXR,
|
INT64_C(0063400000000)+I_MXR, INT64_C(0063600000000)+I_MXR,
|
||||||
0064000000000+I_MXN, 0064000000000+I_MXN,
|
INT64_C(0064000000000)+I_MXN, INT64_C(0064000000000)+I_MXN,
|
||||||
0064200000000+I_MXN, 0064300000000+I_MXN,
|
INT64_C(0064200000000)+I_MXN, INT64_C(0064300000000)+I_MXN,
|
||||||
0064400000000+I_MXN, 0064500000000+I_MXN,
|
INT64_C(0064400000000)+I_MXN, INT64_C(0064500000000)+I_MXN,
|
||||||
0064600000000+I_MXN, 0064700000000+I_MXN,
|
INT64_C(0064600000000)+I_MXN, INT64_C(0064700000000)+I_MXN,
|
||||||
0073400000000+I_TAG, 0073700000000+I_TAG,
|
INT64_C(0073400000000)+I_TAG, INT64_C(0073700000000)+I_TAG,
|
||||||
0075400000000+I_TAG, 0075600000000+I_TAG,
|
INT64_C(0075400000000)+I_TAG, INT64_C(0075600000000)+I_TAG,
|
||||||
0076000000000+I_MXR, 0076100000000+I_NOP, 0076200000000+I_MXR,
|
INT64_C(0076000000000)+I_MXR, INT64_C(0076100000000)+I_NOP, INT64_C(0076200000000)+I_MXR,
|
||||||
0076300000000+I_MXR, 0076400000000+I_MXR, 0076500000000+I_MXR,
|
INT64_C(0076300000000)+I_MXR, INT64_C(0076400000000)+I_MXR, INT64_C(0076500000000)+I_MXR,
|
||||||
0076600000000+I_MXR, 0076700000000+I_MXR, 0077000000000+I_MXR,
|
INT64_C(0076600000000)+I_MXR, INT64_C(0076700000000)+I_MXR, INT64_C(0077000000000)+I_MXR,
|
||||||
0077100000000+I_MXR, 0077200000000+I_MXR, 0077400000000+I_MXR,
|
INT64_C(0077100000000)+I_MXR, INT64_C(0077200000000)+I_MXR, INT64_C(0077400000000)+I_MXR,
|
||||||
0077600000000+I_MXR,
|
INT64_C(0077600000000)+I_MXR,
|
||||||
|
|
||||||
0476000000000+I_SNS, 0476000000001+I_SNS, 0476000000002+I_SNS,
|
INT64_C(0476000000000)+I_SNS, INT64_C(0476000000001)+I_SNS, INT64_C(0476000000002)+I_SNS,
|
||||||
0476000000003+I_SNS, 0476000000004+I_SNS, 0476000000005+I_SNS,
|
INT64_C(0476000000003)+I_SNS, INT64_C(0476000000004)+I_SNS, INT64_C(0476000000005)+I_SNS,
|
||||||
0476000000006+I_SNS, 0476000000007+I_SNS, 0476000000010+I_SNS,
|
INT64_C(0476000000006)+I_SNS, INT64_C(0476000000007)+I_SNS, INT64_C(0476000000010)+I_SNS,
|
||||||
0476000000016+I_SNS, 0476000000141+I_SNS, 0476000000142+I_SNS,
|
INT64_C(0476000000016)+I_SNS, INT64_C(0476000000141)+I_SNS, INT64_C(0476000000142)+I_SNS,
|
||||||
0476000000143+I_SNS, 0476000000144+I_SNS,
|
INT64_C(0476000000143)+I_SNS, INT64_C(0476000000144)+I_SNS,
|
||||||
0476000001000+I_SNS, 0476000002000+I_SNS, 0476000003000+I_SNS,
|
INT64_C(0476000001000)+I_SNS, INT64_C(0476000002000)+I_SNS, INT64_C(0476000003000)+I_SNS,
|
||||||
0476000004000+I_SNS, 0476000005000+I_SNS, 0476000006000+I_SNS,
|
INT64_C(0476000004000)+I_SNS, INT64_C(0476000005000)+I_SNS, INT64_C(0476000006000)+I_SNS,
|
||||||
0476000007000+I_SNS, 0476000010000+I_SNS,
|
INT64_C(0476000007000)+I_SNS, INT64_C(0476000010000)+I_SNS,
|
||||||
|
|
||||||
0402100000000+I_MXN,
|
INT64_C(0402100000000)+I_MXN,
|
||||||
0402200000000+I_MXN, 0402400000000+I_MXN,
|
INT64_C(0402200000000)+I_MXN, INT64_C(0402400000000)+I_MXN,
|
||||||
0402600000000+I_MXN, 0402700000000+I_MXN,
|
INT64_C(0402600000000)+I_MXN, INT64_C(0402700000000)+I_MXN,
|
||||||
0403000000000+I_MXN, 0403100000000+I_MXN,
|
INT64_C(0403000000000)+I_MXN, INT64_C(0403100000000)+I_MXN,
|
||||||
0403200000000+I_MXN, 0403300000000+I_MXN,
|
INT64_C(0403200000000)+I_MXN, INT64_C(0403300000000)+I_MXN,
|
||||||
0404200000000+I_NOP, 0404600000000+I_NOP,
|
INT64_C(0404200000000)+I_NOP, INT64_C(0404600000000)+I_NOP,
|
||||||
0405100000000+I_IMM, 0405400000000+I_IMM, 0405500000000+I_IMM,
|
INT64_C(0405100000000)+I_IMM, INT64_C(0405400000000)+I_IMM, INT64_C(0405500000000)+I_IMM,
|
||||||
0405600000000+I_IMM, 0405700000000+I_IMM,
|
INT64_C(0405600000000)+I_IMM, INT64_C(0405700000000)+I_IMM,
|
||||||
0406000000000+I_MXN, 0406100000000+I_MXN, 0406200000000+I_MXN,
|
INT64_C(0406000000000)+I_MXN, INT64_C(0406100000000)+I_MXN, INT64_C(0406200000000)+I_MXN,
|
||||||
0406300000000+I_MXN, 0406400000000+I_MXN, 0406500000000+I_MXN,
|
INT64_C(0406300000000)+I_MXN, INT64_C(0406400000000)+I_MXN, INT64_C(0406500000000)+I_MXN,
|
||||||
0406600000000+I_MXN, 0406700000000+I_MXN,
|
INT64_C(0406600000000)+I_MXN, INT64_C(0406700000000)+I_MXN,
|
||||||
0410000000000+I_MXN, 0411400000000+I_MXC, 0412000000000+I_MXN,
|
INT64_C(0410000000000)+I_MXN, INT64_C(0411400000000)+I_MXC, INT64_C(0412000000000)+I_MXN,
|
||||||
0413000000000+I_NOP, 0414000000000+I_MXN, 0415400000000+I_MXC,
|
INT64_C(0413000000000)+I_NOP, INT64_C(0414000000000)+I_MXN, INT64_C(0415400000000)+I_MXC,
|
||||||
0420000000000+I_MXN, 0424000000000+I_MXN, 0424100000000+I_MXN,
|
INT64_C(0420000000000)+I_MXN, INT64_C(0424000000000)+I_MXN, INT64_C(0424100000000)+I_MXN,
|
||||||
0426000000000+I_MXN, 0426100000000+I_MXN,
|
INT64_C(0426000000000)+I_MXN, INT64_C(0426100000000)+I_MXN,
|
||||||
0430000000000+I_MXN, 0430100000000+I_MXN,
|
INT64_C(0430000000000)+I_MXN, INT64_C(0430100000000)+I_MXN,
|
||||||
0430200000000+I_MXN, 0430300000000+I_MXN,
|
INT64_C(0430200000000)+I_MXN, INT64_C(0430300000000)+I_MXN,
|
||||||
0430400000000+I_MXN, 0430500000000+I_MXN,
|
INT64_C(0430400000000)+I_MXN, INT64_C(0430500000000)+I_MXN,
|
||||||
0430600000000+I_MXN, 0430700000000+I_MXN,
|
INT64_C(0430600000000)+I_MXN, INT64_C(0430700000000)+I_MXN,
|
||||||
0432000000000+I_MXN, 0434000000000+I_MXN,
|
INT64_C(0432000000000)+I_MXN, INT64_C(0434000000000)+I_MXN,
|
||||||
0450000000000+I_MXN, 0450100000000+I_MXN, 0452000000000+I_MXN,
|
INT64_C(0450000000000)+I_MXN, INT64_C(0450100000000)+I_MXN, INT64_C(0452000000000)+I_MXN,
|
||||||
0453400000000+I_MXR, 0453500000000+I_MXR,
|
INT64_C(0453400000000)+I_MXR, INT64_C(0453500000000)+I_MXR,
|
||||||
0454000000000+I_MXN, 0454100000000+I_MXN,
|
INT64_C(0454000000000)+I_MXN, INT64_C(0454100000000)+I_MXN,
|
||||||
0454200000000+I_MXN, 0454300000000+I_MXN,
|
INT64_C(0454200000000)+I_MXN, INT64_C(0454300000000)+I_MXN,
|
||||||
0454400000000+I_MXN, 0454500000000+I_MXN,
|
INT64_C(0454400000000)+I_MXN, INT64_C(0454500000000)+I_MXN,
|
||||||
0454600000000+I_MXN, 0454700000000+I_MXN,
|
INT64_C(0454600000000)+I_MXN, INT64_C(0454700000000)+I_MXN,
|
||||||
0454000000000+I_MXN, 0454100000000+I_MXN,
|
INT64_C(0454000000000)+I_MXN, INT64_C(0454100000000)+I_MXN,
|
||||||
0454200000000+I_MXN, 0454300000000+I_MXN,
|
INT64_C(0454200000000)+I_MXN, INT64_C(0454300000000)+I_MXN,
|
||||||
0454400000000+I_MXN, 0454500000000+I_MXN,
|
INT64_C(0454400000000)+I_MXN, INT64_C(0454500000000)+I_MXN,
|
||||||
0454600000000+I_MXN, 0454700000000+I_MXN,
|
INT64_C(0454600000000)+I_MXN, INT64_C(0454700000000)+I_MXN,
|
||||||
0460000000000+I_MXN, 0460100000000+I_MXN, 0460200000000+I_MXN, 0460300000000+I_MXN,
|
INT64_C(0460000000000)+I_MXN, INT64_C(0460100000000)+I_MXN, INT64_C(0460200000000)+I_MXN, INT64_C(0460300000000)+I_MXN,
|
||||||
0460400000000+I_MXN,
|
INT64_C(0460400000000)+I_MXN,
|
||||||
0462000000000+I_MXN, 0462500000000+I_MXN,
|
INT64_C(0462000000000)+I_MXN, INT64_C(0462500000000)+I_MXN,
|
||||||
0463400000000+I_MXR, 0463600000000+I_MXR,
|
INT64_C(0463400000000)+I_MXR, INT64_C(0463600000000)+I_MXR,
|
||||||
0464000000000+I_MXN, 0464000000000+I_MXN,
|
INT64_C(0464000000000)+I_MXN, INT64_C(0464000000000)+I_MXN,
|
||||||
0464200000000+I_MXN, 0464300000000+I_MXN,
|
INT64_C(0464200000000)+I_MXN, INT64_C(0464300000000)+I_MXN,
|
||||||
0464400000000+I_MXN, 0464500000000+I_MXN,
|
INT64_C(0464400000000)+I_MXN, INT64_C(0464500000000)+I_MXN,
|
||||||
0464600000000+I_MXN, 0464700000000+I_MXN,
|
INT64_C(0464600000000)+I_MXN, INT64_C(0464700000000)+I_MXN,
|
||||||
0473400000000+I_TAG, 0473700000000+I_TAG,
|
INT64_C(0473400000000)+I_TAG, INT64_C(0473700000000)+I_TAG,
|
||||||
0475400000000+I_TAG, 0475600000000+I_TAG,
|
INT64_C(0475400000000)+I_TAG, INT64_C(0475600000000)+I_TAG,
|
||||||
0476000000000+I_MXR, 0476300000000+I_MXR, 0476400000000+I_MXR,
|
INT64_C(0476000000000)+I_MXR, INT64_C(0476300000000)+I_MXR, INT64_C(0476400000000)+I_MXR,
|
||||||
0476500000000+I_MXR, 0477300000000+I_MXR, 0477200000000+I_MXR,
|
INT64_C(0476500000000)+I_MXR, INT64_C(0477300000000)+I_MXR, INT64_C(0477200000000)+I_MXR,
|
||||||
0477400000000+I_MXR,
|
INT64_C(0477400000000)+I_MXR,
|
||||||
|
|
||||||
0010100000000+I_MXN, 0410100000000+I_MXN,
|
INT64_C(0010100000000)+I_MXN, INT64_C(0410100000000)+I_MXN,
|
||||||
0056200000000+I_MXN, 0456400000000+I_MXN,
|
INT64_C(0056200000000)+I_MXN, INT64_C(0456400000000)+I_MXN,
|
||||||
0476100000041+I_SNS, 0476100000042+I_SNS,
|
INT64_C(0476100000041)+I_SNS, INT64_C(0476100000042)+I_SNS,
|
||||||
0476100000043+I_SNS, 0476100000044+I_SNS,
|
INT64_C(0476100000043)+I_SNS, INT64_C(0476100000044)+I_SNS,
|
||||||
|
|
||||||
01000000000000+I_IOX, 01000000200000+I_IOX, 01100000000000+I_TCH,
|
INT64_C(01000000000000)+I_IOX, INT64_C(01000000200000)+I_IOX, INT64_C(01100000000000)+I_TCH,
|
||||||
01200000000000+I_IOX, 01200000200000+I_IOX,
|
INT64_C(01200000000000)+I_IOX, INT64_C(01200000200000)+I_IOX,
|
||||||
01300000000000+I_IOX, 01300000200000+I_IOX,
|
INT64_C(01300000000000)+I_IOX, INT64_C(01300000200000)+I_IOX,
|
||||||
01400000000000+I_IOX, 01400000200000+I_IOX,
|
INT64_C(01400000000000)+I_IOX, INT64_C(01400000200000)+I_IOX,
|
||||||
01500000000000+I_IOX, 01500000200000+I_IOX,
|
INT64_C(01500000000000)+I_IOX, INT64_C(01500000200000)+I_IOX,
|
||||||
01600000000000+I_IOX, 01600000200000+I_IOX,
|
INT64_C(01600000000000)+I_IOX, INT64_C(01600000200000)+I_IOX,
|
||||||
01700000000000+I_IOX, 01700000200000+I_IOX,
|
INT64_C(01700000000000)+I_IOX, INT64_C(01700000200000)+I_IOX,
|
||||||
|
|
||||||
02000000000000+I_TCH, 02000000200000+I_IOX,
|
INT64_C(02000000000000)+I_TCH, INT64_C(02000000200000)+I_IOX,
|
||||||
02100000000000+I_TCH, 02100000200000+I_TCH,
|
INT64_C(02100000000000)+I_TCH, INT64_C(02100000200000)+I_TCH,
|
||||||
02200000000000+I_I9N, 02220000000000+I_TCH,
|
INT64_C(02200000000000)+I_I9N, INT64_C(02220000000000)+I_TCH,
|
||||||
02200000200000+I_I9N, 02220000200000+I_TCH,
|
INT64_C(02200000200000)+I_I9N, INT64_C(02220000200000)+I_TCH,
|
||||||
02240000000000+I_I9N, 02260000000000+I_TCH,
|
INT64_C(02240000000000)+I_I9N, INT64_C(02260000000000)+I_TCH,
|
||||||
02240000200000+I_I9N,
|
INT64_C(02240000200000)+I_I9N,
|
||||||
02300000000000+I_I9S, 02300000200000+I_I9S,
|
INT64_C(02300000000000)+I_I9S, INT64_C(02300000200000)+I_I9S,
|
||||||
02340000000000+I_I9S,
|
INT64_C(02340000000000)+I_I9S,
|
||||||
02400000000000+I_IOX,
|
INT64_C(02400000000000)+I_IOX,
|
||||||
02500000000000+I_IOX, 02500000200000+I_IOX,
|
INT64_C(02500000000000)+I_IOX, INT64_C(02500000200000)+I_IOX,
|
||||||
02600000200000+I_I9S, 02640000000000+I_I9S, 02640000200000+I_I9S,
|
INT64_C(02600000200000)+I_I9S, INT64_C(02640000000000)+I_I9S, INT64_C(02640000200000)+I_I9S,
|
||||||
02700000000000+I_I9S, 02700000200000+I_IOX,
|
INT64_C(02700000000000)+I_I9S, INT64_C(02700000200000)+I_IOX,
|
||||||
|
|
||||||
0
|
0
|
||||||
};
|
};
|
||||||
|
|
|
@ -428,16 +428,16 @@ const int32 pi_m2lvl[128] = {
|
||||||
};
|
};
|
||||||
|
|
||||||
const d10 bytemask[64] = { 0,
|
const d10 bytemask[64] = { 0,
|
||||||
01, 03, 07, 017, 037, 077,
|
INT64_C(01), INT64_C(03), INT64_C(07), INT64_C(017), INT64_C(037), INT64_C(077),
|
||||||
0177, 0377, 0777, 01777, 03777, 07777,
|
INT64_C(0177), INT64_C(0377), INT64_C(0777), INT64_C(01777), INT64_C(03777), INT64_C(07777),
|
||||||
017777, 037777, 077777,
|
INT64_C(017777), INT64_C(037777), INT64_C(077777),
|
||||||
0177777, 0377777, 0777777,
|
INT64_C(0177777), INT64_C(0377777), INT64_C(0777777),
|
||||||
01777777, 03777777, 07777777,
|
INT64_C(01777777), INT64_C(03777777), INT64_C(07777777),
|
||||||
017777777, 037777777, 077777777,
|
INT64_C(017777777), INT64_C(037777777), INT64_C(077777777),
|
||||||
0177777777, 0377777777, 0777777777,
|
INT64_C(0177777777), INT64_C(0377777777), INT64_C(0777777777),
|
||||||
01777777777, 03777777777, 07777777777,
|
INT64_C(01777777777), INT64_C(03777777777), INT64_C(07777777777),
|
||||||
017777777777, 037777777777, 077777777777,
|
INT64_C(017777777777), INT64_C(037777777777), INT64_C(077777777777),
|
||||||
0177777777777, 0377777777777, 0777777777777,
|
INT64_C(0177777777777), INT64_C(0377777777777), INT64_C(0777777777777),
|
||||||
ONES, ONES, ONES, ONES, ONES, ONES, ONES, ONES, ONES,
|
ONES, ONES, ONES, ONES, ONES, ONES, ONES, ONES, ONES,
|
||||||
ONES, ONES, ONES, ONES, ONES, ONES, ONES, ONES, ONES,
|
ONES, ONES, ONES, ONES, ONES, ONES, ONES, ONES, ONES,
|
||||||
ONES, ONES, ONES, ONES, ONES, ONES, ONES, ONES, ONES
|
ONES, ONES, ONES, ONES, ONES, ONES, ONES, ONES, ONES
|
||||||
|
@ -1968,10 +1968,10 @@ return;
|
||||||
|
|
||||||
/* I/O block transfers - byte to Unibus (0) and Unibus to byte (1) */
|
/* I/O block transfers - byte to Unibus (0) and Unibus to byte (1) */
|
||||||
|
|
||||||
#define BYTE1 0776000000000
|
#define BYTE1 INT64_C(0776000000000)
|
||||||
#define BYTE2 0001774000000
|
#define BYTE2 INT64_C(0001774000000)
|
||||||
#define BYTE3 0000003770000
|
#define BYTE3 INT64_C(0000003770000)
|
||||||
#define BYTE4 0000000007760
|
#define BYTE4 INT64_C(0000000007760)
|
||||||
/* unused 0000000000017 */
|
/* unused 0000000000017 */
|
||||||
|
|
||||||
void bltu (int32 ac, a10 ea, int32 pflgs, int dir)
|
void bltu (int32 ac, a10 ea, int32 pflgs, int dir)
|
||||||
|
|
|
@ -149,16 +149,16 @@ typedef t_int64 d10; /* PDP-10 data (36b) */
|
||||||
#define MEM_ADDR_NXM(x) ((x) >= MEMSIZE)
|
#define MEM_ADDR_NXM(x) ((x) >= MEMSIZE)
|
||||||
#define VASIZE 18 /* virtual addr width */
|
#define VASIZE 18 /* virtual addr width */
|
||||||
#define AMASK ((1 << VASIZE) - 1) /* virtual addr mask */
|
#define AMASK ((1 << VASIZE) - 1) /* virtual addr mask */
|
||||||
#define LMASK 0777777000000 /* left mask */
|
#define LMASK INT64_C(0777777000000) /* left mask */
|
||||||
#define LSIGN 0400000000000 /* left sign */
|
#define LSIGN INT64_C(0400000000000) /* left sign */
|
||||||
#define RMASK 0000000777777 /* right mask */
|
#define RMASK INT64_C(0000000777777) /* right mask */
|
||||||
#define RSIGN 0000000400000 /* right sign */
|
#define RSIGN INT64_C(0000000400000) /* right sign */
|
||||||
#define DMASK 0777777777777 /* data mask */
|
#define DMASK INT64_C(0777777777777) /* data mask */
|
||||||
#define SIGN 0400000000000 /* sign */
|
#define SIGN INT64_C(0400000000000) /* sign */
|
||||||
#define MMASK 0377777777777 /* magnitude mask */
|
#define MMASK INT64_C(0377777777777) /* magnitude mask */
|
||||||
#define ONES 0777777777777
|
#define ONES INT64_C(0777777777777)
|
||||||
#define MAXPOS 0377777777777
|
#define MAXPOS INT64_C(0377777777777)
|
||||||
#define MAXNEG 0400000000000
|
#define MAXNEG INT64_C(0400000000000)
|
||||||
|
|
||||||
/* Instruction format */
|
/* Instruction format */
|
||||||
|
|
||||||
|
@ -185,11 +185,11 @@ typedef t_int64 d10; /* PDP-10 data (36b) */
|
||||||
/* Byte pointer format */
|
/* Byte pointer format */
|
||||||
|
|
||||||
#define BP_V_P 30 /* position */
|
#define BP_V_P 30 /* position */
|
||||||
#define BP_M_P 077
|
#define BP_M_P INT64_C(077)
|
||||||
#define BP_P 0770000000000
|
#define BP_P INT64_C(0770000000000)
|
||||||
#define BP_V_S 24 /* size */
|
#define BP_V_S 24 /* size */
|
||||||
#define BP_M_S 077
|
#define BP_M_S INT64_C(077)
|
||||||
#define BP_S 0007700000000
|
#define BP_S INT64_C(0007700000000)
|
||||||
#define GET_P(x) ((int32) (((x) >> BP_V_P) & BP_M_P))
|
#define GET_P(x) ((int32) (((x) >> BP_V_P) & BP_M_P))
|
||||||
#define GET_S(x) ((int32) (((x) >> BP_V_S) & BP_M_S))
|
#define GET_S(x) ((int32) (((x) >> BP_V_S) & BP_M_S))
|
||||||
#define PUT_P(b,x) (((b) & ~BP_P) | ((((t_int64) (x)) & BP_M_P) << BP_V_P))
|
#define PUT_P(b,x) (((b) & ~BP_P) | ((((t_int64) (x)) & BP_M_P) << BP_V_P))
|
||||||
|
@ -290,15 +290,15 @@ typedef t_int64 d10; /* PDP-10 data (36b) */
|
||||||
|
|
||||||
/* Page table entry, TOPS-20 paging */
|
/* Page table entry, TOPS-20 paging */
|
||||||
|
|
||||||
#define PTE_T20_V_TYP 33 /* T20: pointer type */
|
#define PTE_T20_V_TYP INT64_C(33) /* T20: pointer type */
|
||||||
#define PTE_T20_M_TYP 07
|
#define PTE_T20_M_TYP INT64_C(07)
|
||||||
#define T20_NOA 0 /* no access */
|
#define T20_NOA 0 /* no access */
|
||||||
#define T20_IMM 1 /* immediate */
|
#define T20_IMM 1 /* immediate */
|
||||||
#define T20_SHR 2 /* shared */
|
#define T20_SHR 2 /* shared */
|
||||||
#define T20_IND 3 /* indirect */
|
#define T20_IND 3 /* indirect */
|
||||||
#define PTE_T20_W 0020000000000 /* T20: writeable */
|
#define PTE_T20_W INT64_C(0020000000000) /* T20: writeable */
|
||||||
#define PTE_T20_C 0004000000000 /* T20: cacheable */
|
#define PTE_T20_C INT64_C(0004000000000) /* T20: cacheable */
|
||||||
#define PTE_T20_STM 0000077000000 /* T20: storage medium */
|
#define PTE_T20_STM INT64_C(0000077000000) /* T20: storage medium */
|
||||||
#define PTE_T20_V_PMI 18 /* page map index */
|
#define PTE_T20_V_PMI 18 /* page map index */
|
||||||
#define PTE_T20_M_PMI 0777
|
#define PTE_T20_M_PMI 0777
|
||||||
#define T20_GETTYP(x) ((int32) (((x) >> PTE_T20_V_TYP) & PTE_T20_M_TYP))
|
#define T20_GETTYP(x) ((int32) (((x) >> PTE_T20_V_TYP) & PTE_T20_M_TYP))
|
||||||
|
@ -306,27 +306,27 @@ typedef t_int64 d10; /* PDP-10 data (36b) */
|
||||||
|
|
||||||
/* CST entry, TOPS-20 paging */
|
/* CST entry, TOPS-20 paging */
|
||||||
|
|
||||||
#define CST_AGE 0770000000000 /* age field */
|
#define CST_AGE INT64_C(0770000000000) /* age field */
|
||||||
#define CST_M 0000000000001 /* modified */
|
#define CST_M INT64_C(0000000000001) /* modified */
|
||||||
|
|
||||||
/* Page fail word, DEC paging */
|
/* Page fail word, DEC paging */
|
||||||
|
|
||||||
#define PF_USER 0400000000000 /* user mode */
|
#define PF_USER INT64_C(0400000000000) /* user mode */
|
||||||
#define PF_HARD 0200000000000 /* nx I/O reg */
|
#define PF_HARD INT64_C(0200000000000) /* nx I/O reg */
|
||||||
#define PF_NXM 0370000000000 /* nx memory */
|
#define PF_NXM INT64_C(0370000000000) /* nx memory */
|
||||||
#define PF_T10_A 0100000000000 /* T10: pte A bit */
|
#define PF_T10_A INT64_C(0100000000000) /* T10: pte A bit */
|
||||||
#define PF_T10_W 0040000000000 /* T10: pte W bit */
|
#define PF_T10_W INT64_C(0040000000000) /* T10: pte W bit */
|
||||||
#define PF_T10_S 0020000000000 /* T10: pte S bit */
|
#define PF_T10_S INT64_C(0020000000000) /* T10: pte S bit */
|
||||||
#define PF_T20_DN 0100000000000 /* T20: eval done */
|
#define PF_T20_DN INT64_C(0100000000000) /* T20: eval done */
|
||||||
#define PF_T20_M 0040000000000 /* T20: modified */
|
#define PF_T20_M INT64_C(0040000000000) /* T20: modified */
|
||||||
#define PF_T20_W 0020000000000 /* T20: writeable */
|
#define PF_T20_W INT64_C(0020000000000) /* T20: writeable */
|
||||||
#define PF_WRITE 0010000000000 /* write reference */
|
#define PF_WRITE INT64_C(0010000000000) /* write reference */
|
||||||
#define PF_PUB 0004000000000 /* pte public bit */
|
#define PF_PUB INT64_C(0004000000000) /* pte public bit */
|
||||||
#define PF_C 0002000000000 /* pte C bit */
|
#define PF_C INT64_C(0002000000000) /* pte C bit */
|
||||||
#define PF_VIRT 0001000000000 /* pfl: virt ref */
|
#define PF_VIRT INT64_C(0001000000000) /* pfl: virt ref */
|
||||||
#define PF_NXMP 0001000000000 /* nxm: phys ref */
|
#define PF_NXMP INT64_C(0001000000000) /* nxm: phys ref */
|
||||||
#define PF_IO 0000200000000 /* I/O reference */
|
#define PF_IO INT64_C(0000200000000) /* I/O reference */
|
||||||
#define PF_BYTE 0000020000000 /* I/O byte ref */
|
#define PF_BYTE INT64_C(0000020000000) /* I/O byte ref */
|
||||||
|
|
||||||
/* Virtual address, ITS paging */
|
/* Virtual address, ITS paging */
|
||||||
|
|
||||||
|
@ -358,7 +358,7 @@ typedef t_int64 d10; /* PDP-10 data (36b) */
|
||||||
|
|
||||||
/* Page fail word, ITS paging */
|
/* Page fail word, ITS paging */
|
||||||
|
|
||||||
#define PF_ITS_WRITE 0010000000000 /* write reference */
|
#define PF_ITS_WRITE INT64_C(0010000000000) /* write reference */
|
||||||
#define PF_ITS_V_ACC 28 /* access from PTE */
|
#define PF_ITS_V_ACC 28 /* access from PTE */
|
||||||
|
|
||||||
/* Page table fill operations */
|
/* Page table fill operations */
|
||||||
|
@ -370,16 +370,16 @@ typedef t_int64 d10; /* PDP-10 data (36b) */
|
||||||
|
|
||||||
/* User base register */
|
/* User base register */
|
||||||
|
|
||||||
#define UBR_SETACB 0400000000000 /* set AC blocks */
|
#define UBR_SETACB INT64_C(0400000000000) /* set AC blocks */
|
||||||
#define UBR_SETUBR 0100000000000 /* set UBR */
|
#define UBR_SETUBR INT64_C(0100000000000) /* set UBR */
|
||||||
#define UBR_V_CURAC 27 /* current AC block */
|
#define UBR_V_CURAC 27 /* current AC block */
|
||||||
#define UBR_V_PRVAC 24 /* previous AC block */
|
#define UBR_V_PRVAC 24 /* previous AC block */
|
||||||
#define UBR_M_AC 07
|
#define UBR_M_AC 07
|
||||||
#define UBR_ACBMASK 0007700000000
|
#define UBR_ACBMASK INT64_C(0007700000000)
|
||||||
#define UBR_V_UBR 0 /* user base register */
|
#define UBR_V_UBR 0 /* user base register */
|
||||||
#define UBR_N_UBR 11
|
#define UBR_N_UBR 11
|
||||||
#define UBR_M_UBR 03777
|
#define UBR_M_UBR 03777
|
||||||
#define UBR_UBRMASK 0000000003777
|
#define UBR_UBRMASK INT64_C(0000000003777)
|
||||||
#define UBR_GETCURAC(x) ((int32) (((x) >> UBR_V_CURAC) & UBR_M_AC))
|
#define UBR_GETCURAC(x) ((int32) (((x) >> UBR_V_CURAC) & UBR_M_AC))
|
||||||
#define UBR_GETPRVAC(x) ((int32) (((x) >> UBR_V_PRVAC) & UBR_M_AC))
|
#define UBR_GETPRVAC(x) ((int32) (((x) >> UBR_V_PRVAC) & UBR_M_AC))
|
||||||
#define UBR_GETUBR(x) ((int32) (((x) >> UBR_V_UBR) & PAG_M_PPN))
|
#define UBR_GETUBR(x) ((int32) (((x) >> UBR_V_UBR) & PAG_M_PPN))
|
||||||
|
@ -467,10 +467,10 @@ typedef t_int64 d10; /* PDP-10 data (36b) */
|
||||||
|
|
||||||
/* Microcode constants */
|
/* Microcode constants */
|
||||||
|
|
||||||
#define UC_INHCST 0400000000000 /* inhibit CST update */
|
#define UC_INHCST INT64_C(0400000000000) /* inhibit CST update */
|
||||||
#define UC_UBABLT 0040000000000 /* BLTBU and BLTUB */
|
#define UC_UBABLT INT64_C(0040000000000) /* BLTBU and BLTUB */
|
||||||
#define UC_KIPAGE 0020000000000 /* "KI" paging */
|
#define UC_KIPAGE INT64_C(0020000000000) /* "KI" paging */
|
||||||
#define UC_KLPAGE 0010000000000 /* "KL" paging */
|
#define UC_KLPAGE INT64_C(0010000000000) /* "KL" paging */
|
||||||
#define UC_VERDEC (0130 << 18) /* ucode version */
|
#define UC_VERDEC (0130 << 18) /* ucode version */
|
||||||
#define UC_VERITS (262u << 18)
|
#define UC_VERITS (262u << 18)
|
||||||
#define UC_SERDEC 4097 /* serial number */
|
#define UC_SERDEC 4097 /* serial number */
|
||||||
|
|
|
@ -520,8 +520,8 @@ for ( ; ba < lim; ba++) { /* by bytes */
|
||||||
}
|
}
|
||||||
val = *buf++; /* get data */
|
val = *buf++; /* get data */
|
||||||
if (ba & 2)
|
if (ba & 2)
|
||||||
M[pa10] = (M[pa10] & 0777777600000) | val;
|
M[pa10] = (M[pa10] & INT64_C(0777777600000)) | val;
|
||||||
else M[pa10] = (M[pa10] & 0600000777777) | (val << 18);
|
else M[pa10] = (M[pa10] & INT64_C(0600000777777)) | (val << 18);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -119,14 +119,14 @@ typedef struct { /* unpacked fp number */
|
||||||
#define FP_BIAS 0200 /* exponent bias */
|
#define FP_BIAS 0200 /* exponent bias */
|
||||||
#define FP_N_FHI 27 /* # of hi frac bits */
|
#define FP_N_FHI 27 /* # of hi frac bits */
|
||||||
#define FP_V_FHI 0 /* must be zero */
|
#define FP_V_FHI 0 /* must be zero */
|
||||||
#define FP_M_FHI 0000777777777
|
#define FP_M_FHI INT64_C(0000777777777)
|
||||||
#define FP_N_EXP 8 /* # of exp bits */
|
#define FP_N_EXP 8 /* # of exp bits */
|
||||||
#define FP_V_EXP (FP_V_FHI + FP_N_FHI)
|
#define FP_V_EXP (FP_V_FHI + FP_N_FHI)
|
||||||
#define FP_M_EXP 0377
|
#define FP_M_EXP 0377
|
||||||
#define FP_V_SIGN (FP_V_EXP + FP_N_EXP) /* sign */
|
#define FP_V_SIGN (FP_V_EXP + FP_N_EXP) /* sign */
|
||||||
#define FP_N_FLO 35 /* # of lo frac bits */
|
#define FP_N_FLO 35 /* # of lo frac bits */
|
||||||
#define FP_V_FLO 0 /* must be zero */
|
#define FP_V_FLO 0 /* must be zero */
|
||||||
#define FP_M_FLO 0377777777777
|
#define FP_M_FLO INT64_C(0377777777777)
|
||||||
#define GET_FPSIGN(x) ((int32) (((x) >> FP_V_SIGN) & 1))
|
#define GET_FPSIGN(x) ((int32) (((x) >> FP_V_SIGN) & 1))
|
||||||
#define GET_FPEXP(x) ((int32) (((x) >> FP_V_EXP) & FP_M_EXP))
|
#define GET_FPEXP(x) ((int32) (((x) >> FP_V_EXP) & FP_M_EXP))
|
||||||
#define GET_FPHI(x) ((x) & FP_M_FHI)
|
#define GET_FPHI(x) ((x) & FP_M_FHI)
|
||||||
|
@ -141,14 +141,14 @@ typedef struct { /* unpacked fp number */
|
||||||
#define FP_V_URNDS (FP_V_UFHI - 1) /* sp round bit */
|
#define FP_V_URNDS (FP_V_UFHI - 1) /* sp round bit */
|
||||||
#define FP_V_UCRY (FP_V_UFHI + FP_N_FHI) /* <63> */
|
#define FP_V_UCRY (FP_V_UFHI + FP_N_FHI) /* <63> */
|
||||||
#define FP_V_UNORM (FP_V_UCRY - 1) /* normalized bit */
|
#define FP_V_UNORM (FP_V_UCRY - 1) /* normalized bit */
|
||||||
#define FP_UFHI 0x7FFFFFF000000000
|
#define FP_UFHI INT64_C(0x7FFFFFF000000000)
|
||||||
#define FP_UFLO 0x0000000FFFFFFFFE
|
#define FP_UFLO INT64_C(0x0000000FFFFFFFFE)
|
||||||
#define FP_UFRAC 0x7FFFFFFFFFFFFFFE
|
#define FP_UFRAC INT64_C(0x7FFFFFFFFFFFFFFE)
|
||||||
#define FP_URNDD 0x0000000000000001
|
#define FP_URNDD INT64_C(0x0000000000000001)
|
||||||
#define FP_URNDS 0x0000000800000000
|
#define FP_URNDS INT64_C(0x0000000800000000)
|
||||||
#define FP_UNORM 0x4000000000000000
|
#define FP_UNORM INT64_C(0x4000000000000000)
|
||||||
#define FP_UCRY 0x8000000000000000
|
#define FP_UCRY INT64_C(0x8000000000000000)
|
||||||
#define FP_ONES 0xFFFFFFFFFFFFFFFF
|
#define FP_ONES INT64_C(0xFFFFFFFFFFFFFFFF)
|
||||||
|
|
||||||
#define UNEG(x) ((~x) + 1)
|
#define UNEG(x) ((~x) + 1)
|
||||||
#define DUNEG(x) x.flo = UNEG (x.flo); x.fhi = ~x.fhi + (x.flo == 0)
|
#define DUNEG(x) x.flo = UNEG (x.flo); x.fhi = ~x.fhi + (x.flo == 0)
|
||||||
|
|
|
@ -762,7 +762,7 @@ t_bool wrcstm (a10 ea, int32 prv)
|
||||||
{
|
{
|
||||||
cstm = Read (ea, prv);
|
cstm = Read (ea, prv);
|
||||||
if ((cpu_unit.flags & UNIT_T20) && (ea == 040127))
|
if ((cpu_unit.flags & UNIT_T20) && (ea == 040127))
|
||||||
cstm = 0770000000000;
|
cstm = INT64_C(0770000000000);
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
176
PDP10/pdp10_rp.c
176
PDP10/pdp10_rp.c
|
@ -1190,97 +1190,97 @@ return SCPE_OK;
|
||||||
#define BOOT_LEN (sizeof (boot_rom_dec) / sizeof (d10))
|
#define BOOT_LEN (sizeof (boot_rom_dec) / sizeof (d10))
|
||||||
|
|
||||||
static const d10 boot_rom_dec[] = {
|
static const d10 boot_rom_dec[] = {
|
||||||
0515040000001, /* boot:hrlzi 1,1 ; uba # */
|
INT64_C(0515040000001), /* boot:hrlzi 1,1 ; uba # */
|
||||||
0201000140001, /* movei 0,140001 ; vld,fst,pg 1 */
|
INT64_C(0201000140001), /* movei 0,140001 ; vld,fst,pg 1 */
|
||||||
0713001000000+(IOBA_UBMAP+1 & RMASK), /* wrio 0,763001(1); set ubmap */
|
INT64_C(0713001000000)+(IOBA_UBMAP+1 & RMASK), /* wrio 0,763001(1); set ubmap */
|
||||||
0435040000000+(IOBA_RP & RMASK), /* iori 1,776700 ; rh addr */
|
INT64_C(0435040000000)+(IOBA_RP & RMASK), /* iori 1,776700 ; rh addr */
|
||||||
0202040000000+FE_RHBASE, /* movem 1,FE_RHBASE */
|
INT64_C(0202040000000)+FE_RHBASE, /* movem 1,FE_RHBASE */
|
||||||
0201000000040, /* movei 0,40 ; ctrl reset */
|
INT64_C(0201000000040), /* movei 0,40 ; ctrl reset */
|
||||||
0713001000010, /* wrio 0,10(1) ; ->RPCS2 */
|
INT64_C(0713001000010), /* wrio 0,10(1) ; ->RPCS2 */
|
||||||
0201000000021, /* movei 0,21 ; preset */
|
INT64_C(0201000000021), /* movei 0,21 ; preset */
|
||||||
0713001000000, /* wrio 0,0(1) ; ->RPCS1 */
|
INT64_C(0713001000000), /* wrio 0,0(1) ; ->RPCS1 */
|
||||||
0201100000001, /* movei 2,1 ; blk #1 */
|
INT64_C(0201100000001), /* movei 2,1 ; blk #1 */
|
||||||
0265740377032, /* jsp 17,rdbl ; read */
|
INT64_C(0265740377032), /* jsp 17,rdbl ; read */
|
||||||
0204140001000, /* movs 3,1000 ; id word */
|
INT64_C(0204140001000), /* movs 3,1000 ; id word */
|
||||||
0306140505755, /* cain 3,sixbit /HOM/ */
|
INT64_C(0306140505755), /* cain 3,sixbit /HOM/ */
|
||||||
0254000377023, /* jrst .+6 ; match */
|
INT64_C(0254000377023), /* jrst .+6 ; match */
|
||||||
0201100000010, /* movei 2,10 ; blk #10 */
|
INT64_C(0201100000010), /* movei 2,10 ; blk #10 */
|
||||||
0265740377032, /* jsp 17,rdbl ; read */
|
INT64_C(0265740377032), /* jsp 17,rdbl ; read */
|
||||||
0204140001000, /* movs 3,1000 ; id word */
|
INT64_C(0204140001000), /* movs 3,1000 ; id word */
|
||||||
0302140505755, /* caie 3,sixbit /HOM/ */
|
INT64_C(0302140505755), /* caie 3,sixbit /HOM/ */
|
||||||
0254200377022, /* halt . ; inv home */
|
INT64_C(0254200377022), /* halt . ; inv home */
|
||||||
0336100001103, /* skipn 2,1103 ; pg of ptrs */
|
INT64_C(0336100001103), /* skipn 2,1103 ; pg of ptrs */
|
||||||
0254200377024, /* halt . ; inv ptr */
|
INT64_C(0254200377024), /* halt . ; inv ptr */
|
||||||
0265740377032, /* jsp 17,rdbl ; read */
|
INT64_C(0265740377032), /* jsp 17,rdbl ; read */
|
||||||
0336100001004, /* skipn 2,1004 ; mon boot */
|
INT64_C(0336100001004), /* skipn 2,1004 ; mon boot */
|
||||||
0254200377027, /* halt . ; inv ptr */
|
INT64_C(0254200377027), /* halt . ; inv ptr */
|
||||||
0265740377032, /* jsp 17,rdbl ; read */
|
INT64_C(0265740377032), /* jsp 17,rdbl ; read */
|
||||||
0254000001000, /* jrst 1000 ; start */
|
INT64_C(0254000001000), /* jrst 1000 ; start */
|
||||||
0201140176000, /* rdbl:movei 3,176000 ; wd cnt */
|
INT64_C(0201140176000), /* rdbl:movei 3,176000 ; wd cnt */
|
||||||
0201200004000, /* movei 4,4000 ; addr */
|
INT64_C(0201200004000), /* movei 4,4000 ; addr */
|
||||||
0200240000000+FE_UNIT, /* move 5,FE_UNIT ; unit */
|
INT64_C(0200240000000)+FE_UNIT, /* move 5,FE_UNIT ; unit */
|
||||||
0200300000002, /* move 6,2 */
|
INT64_C(0200300000002), /* move 6,2 */
|
||||||
0242300777750, /* lsh 6,-24. ; cyl */
|
INT64_C(0242300777750), /* lsh 6,-24. ; cyl */
|
||||||
0713141000002, /* wrio 3,2(1) ; ->RPWC */
|
INT64_C(0713141000002), /* wrio 3,2(1) ; ->RPWC */
|
||||||
0713201000004, /* wrio 4,4(1) ; ->RPBA */
|
INT64_C(0713201000004), /* wrio 4,4(1) ; ->RPBA */
|
||||||
0713101000006, /* wrio 2,6(1) ; ->RPDA */
|
INT64_C(0713101000006), /* wrio 2,6(1) ; ->RPDA */
|
||||||
0713241000010, /* wrio 5,10(1) ; ->RPCS2 */
|
INT64_C(0713241000010), /* wrio 5,10(1) ; ->RPCS2 */
|
||||||
0713301000034, /* wrio 6,34(1) ; ->RPDC */
|
INT64_C(0713301000034), /* wrio 6,34(1) ; ->RPDC */
|
||||||
0201000000071, /* movei 0,71 ; read+go */
|
INT64_C(0201000000071), /* movei 0,71 ; read+go */
|
||||||
0713001000000, /* wrio 0,0(1) ; ->RPCS1 */
|
INT64_C(0713001000000), /* wrio 0,0(1) ; ->RPCS1 */
|
||||||
0712341000000, /* rdio 7,0(1) ; read csr */
|
INT64_C(0712341000000), /* rdio 7,0(1) ; read csr */
|
||||||
0606340000200, /* trnn 7,200 ; test rdy */
|
INT64_C(0606340000200), /* trnn 7,200 ; test rdy */
|
||||||
0254000377046, /* jrst .-2 ; loop */
|
INT64_C(0254000377046), /* jrst .-2 ; loop */
|
||||||
0602340100000, /* trne 7,100000 ; test err */
|
INT64_C(0602340100000), /* trne 7,100000 ; test err */
|
||||||
0254200377052, /* halt */
|
INT64_C(0254200377052), /* halt */
|
||||||
0254017000000, /* jrst 0(17) ; return */
|
INT64_C(0254017000000), /* jrst 0(17) ; return */
|
||||||
};
|
};
|
||||||
|
|
||||||
static const d10 boot_rom_its[] = {
|
static const d10 boot_rom_its[] = {
|
||||||
0515040000001, /* boot:hrlzi 1,1 ; uba # */
|
INT64_C(0515040000001), /* boot:hrlzi 1,1 ; uba # */
|
||||||
0201000140001, /* movei 0,140001 ; vld,fst,pg 1 */
|
INT64_C(0201000140001), /* movei 0,140001 ; vld,fst,pg 1 */
|
||||||
0715000000000+(IOBA_UBMAP+1 & RMASK), /* iowrq 0,763001 ; set ubmap */
|
INT64_C(0715000000000)+(IOBA_UBMAP+1 & RMASK), /* iowrq 0,763001 ; set ubmap */
|
||||||
0435040000000+(IOBA_RP & RMASK), /* iori 1,776700 ; rh addr */
|
INT64_C(0435040000000)+(IOBA_RP & RMASK), /* iori 1,776700 ; rh addr */
|
||||||
0202040000000+FE_RHBASE, /* movem 1,FE_RHBASE */
|
INT64_C(0202040000000)+FE_RHBASE, /* movem 1,FE_RHBASE */
|
||||||
0201000000040, /* movei 0,40 ; ctrl reset */
|
INT64_C(0201000000040), /* movei 0,40 ; ctrl reset */
|
||||||
0715001000010, /* iowrq 0,10(1) ; ->RPCS2 */
|
INT64_C(0715001000010), /* iowrq 0,10(1) ; ->RPCS2 */
|
||||||
0201000000021, /* movei 0,21 ; preset */
|
INT64_C(0201000000021), /* movei 0,21 ; preset */
|
||||||
0715001000000, /* iowrq 0,0(1) ; ->RPCS1 */
|
INT64_C(0715001000000), /* iowrq 0,0(1) ; ->RPCS1 */
|
||||||
0201100000001, /* movei 2,1 ; blk #1 */
|
INT64_C(0201100000001), /* movei 2,1 ; blk #1 */
|
||||||
0265740377032, /* jsp 17,rdbl ; read */
|
INT64_C(0265740377032), /* jsp 17,rdbl ; read */
|
||||||
0204140001000, /* movs 3,1000 ; id word */
|
INT64_C(0204140001000), /* movs 3,1000 ; id word */
|
||||||
0306140505755, /* cain 3,sixbit /HOM/ */
|
INT64_C(0306140505755), /* cain 3,sixbit /HOM/ */
|
||||||
0254000377023, /* jrst .+6 ; match */
|
INT64_C(0254000377023), /* jrst .+6 ; match */
|
||||||
0201100000010, /* movei 2,10 ; blk #10 */
|
INT64_C(0201100000010), /* movei 2,10 ; blk #10 */
|
||||||
0265740377032, /* jsp 17,rdbl ; read */
|
INT64_C(0265740377032), /* jsp 17,rdbl ; read */
|
||||||
0204140001000, /* movs 3,1000 ; id word */
|
INT64_C(0204140001000), /* movs 3,1000 ; id word */
|
||||||
0302140505755, /* caie 3,sixbit /HOM/ */
|
INT64_C(0302140505755), /* caie 3,sixbit /HOM/ */
|
||||||
0254200377022, /* halt . ; inv home */
|
INT64_C(0254200377022), /* halt . ; inv home */
|
||||||
0336100001103, /* skipn 2,1103 ; pg of ptrs */
|
INT64_C(0336100001103), /* skipn 2,1103 ; pg of ptrs */
|
||||||
0254200377024, /* halt . ; inv ptr */
|
INT64_C(0254200377024), /* halt . ; inv ptr */
|
||||||
0265740377032, /* jsp 17,rdbl ; read */
|
INT64_C(0265740377032), /* jsp 17,rdbl ; read */
|
||||||
0336100001004, /* skipn 2,1004 ; mon boot */
|
INT64_C(0336100001004), /* skipn 2,1004 ; mon boot */
|
||||||
0254200377027, /* halt . ; inv ptr */
|
INT64_C(0254200377027), /* halt . ; inv ptr */
|
||||||
0265740377032, /* jsp 17,rdbl ; read */
|
INT64_C(0265740377032), /* jsp 17,rdbl ; read */
|
||||||
0254000001000, /* jrst 1000 ; start */
|
INT64_C(0254000001000), /* jrst 1000 ; start */
|
||||||
0201140176000, /* rdbl:movei 3,176000 ; wd cnt */
|
INT64_C(0201140176000), /* rdbl:movei 3,176000 ; wd cnt */
|
||||||
0201200004000, /* movei 4,4000 ; addr */
|
INT64_C(0201200004000), /* movei 4,4000 ; addr */
|
||||||
0200240000000+FE_UNIT, /* move 5,FE_UNIT ; unit */
|
INT64_C(0200240000000)+FE_UNIT, /* move 5,FE_UNIT ; unit */
|
||||||
0200300000002, /* move 6,2 */
|
INT64_C(0200300000002), /* move 6,2 */
|
||||||
0242300777750, /* lsh 6,-24. ; cyl */
|
INT64_C(0242300777750), /* lsh 6,-24. ; cyl */
|
||||||
0715141000002, /* iowrq 3,2(1) ; ->RPWC */
|
INT64_C(0715141000002), /* iowrq 3,2(1) ; ->RPWC */
|
||||||
0715201000004, /* iowrq 4,4(1) ; ->RPBA */
|
INT64_C(0715201000004), /* iowrq 4,4(1) ; ->RPBA */
|
||||||
0715101000006, /* iowrq 2,6(1) ; ->RPDA */
|
INT64_C(0715101000006), /* iowrq 2,6(1) ; ->RPDA */
|
||||||
0715241000010, /* iowrq 5,10(1) ; ->RPCS2 */
|
INT64_C(0715241000010), /* iowrq 5,10(1) ; ->RPCS2 */
|
||||||
0715301000034, /* iowrq 6,34(1) ; ->RPDC */
|
INT64_C(0715301000034), /* iowrq 6,34(1) ; ->RPDC */
|
||||||
0201000000071, /* movei 0,71 ; read+go */
|
INT64_C(0201000000071), /* movei 0,71 ; read+go */
|
||||||
0715001000000, /* iowrq 0,0(1) ; ->RPCS1 */
|
INT64_C(0715001000000), /* iowrq 0,0(1) ; ->RPCS1 */
|
||||||
0711341000000, /* iordq 7,0(1) ; read csr */
|
INT64_C(0711341000000), /* iordq 7,0(1) ; read csr */
|
||||||
0606340000200, /* trnn 7,200 ; test rdy */
|
INT64_C(0606340000200), /* trnn 7,200 ; test rdy */
|
||||||
0254000377046, /* jrst .-2 ; loop */
|
INT64_C(0254000377046), /* jrst .-2 ; loop */
|
||||||
0602340100000, /* trne 7,100000 ; test err */
|
INT64_C(0602340100000), /* trne 7,100000 ; test err */
|
||||||
0254200377052, /* halt */
|
INT64_C(0254200377052), /* halt */
|
||||||
0254017000000, /* jrst 0(17) ; return */
|
INT64_C(0254017000000), /* jrst 0(17) ; return */
|
||||||
};
|
};
|
||||||
|
|
||||||
t_stat rp_boot (int32 unitno, DEVICE *dptr)
|
t_stat rp_boot (int32 unitno, DEVICE *dptr)
|
||||||
|
|
|
@ -383,17 +383,17 @@ return SCPE_FMT;
|
||||||
|
|
||||||
#define I_V_FL 39 /* inst class */
|
#define I_V_FL 39 /* inst class */
|
||||||
#define I_M_FL 03 /* class mask */
|
#define I_M_FL 03 /* class mask */
|
||||||
#define I_ITS 004000000000000 /* ITS flag */
|
#define I_ITS INT64_C(004000000000000) /* ITS flag */
|
||||||
#define I_AC 000000000000000 /* AC, address */
|
#define I_AC INT64_C(000000000000000) /* AC, address */
|
||||||
#define I_OP 010000000000000 /* address only */
|
#define I_OP INT64_C(010000000000000) /* address only */
|
||||||
#define I_IO 020000000000000 /* classic I/O */
|
#define I_IO INT64_C(020000000000000) /* classic I/O */
|
||||||
#define I_V_AC 00
|
#define I_V_AC 00
|
||||||
#define I_V_OP 01
|
#define I_V_OP 01
|
||||||
#define I_V_IO 02
|
#define I_V_IO 02
|
||||||
|
|
||||||
static const d10 masks[] = {
|
static const d10 masks[] = {
|
||||||
0777000000000, 0777740000000,
|
INT64_C(0777000000000), INT64_C(0777740000000),
|
||||||
0700340000000, 0777777777777
|
INT64_C(0700340000000), INT64_C(0777777777777)
|
||||||
};
|
};
|
||||||
|
|
||||||
static const char *opcode[] = {
|
static const char *opcode[] = {
|
||||||
|
@ -501,171 +501,171 @@ NULL
|
||||||
};
|
};
|
||||||
|
|
||||||
static const d10 opc_val[] = {
|
static const d10 opc_val[] = {
|
||||||
0102000000000+I_AC+I_ITS, 0103000000000+I_AC+I_ITS,
|
INT64_C(0102000000000)+I_AC+I_ITS, INT64_C(0103000000000)+I_AC+I_ITS,
|
||||||
0710000000000+I_AC+I_ITS, 0711000000000+I_AC+I_ITS, 0712000000000+I_AC+I_ITS,
|
INT64_C(0710000000000)+I_AC+I_ITS, INT64_C(0711000000000)+I_AC+I_ITS, INT64_C(0712000000000)+I_AC+I_ITS,
|
||||||
0713000000000+I_AC+I_ITS, 0714000000000+I_AC+I_ITS, 0715000000000+I_AC+I_ITS,
|
INT64_C(0713000000000)+I_AC+I_ITS, INT64_C(0714000000000)+I_AC+I_ITS, INT64_C(0715000000000)+I_AC+I_ITS,
|
||||||
0720000000000+I_AC+I_ITS, 0721000000000+I_AC+I_ITS, 0722000000000+I_AC+I_ITS,
|
INT64_C(0720000000000)+I_AC+I_ITS, INT64_C(0721000000000)+I_AC+I_ITS, INT64_C(0722000000000)+I_AC+I_ITS,
|
||||||
0723000000000+I_AC+I_ITS, 0724000000000+I_AC+I_ITS, 0725000000000+I_AC+I_ITS,
|
INT64_C(0723000000000)+I_AC+I_ITS, INT64_C(0724000000000)+I_AC+I_ITS, INT64_C(0725000000000)+I_AC+I_ITS,
|
||||||
0701000000000+I_OP+I_ITS, 0701440000000+I_OP+I_ITS, 0701540000000+I_OP+I_ITS,
|
INT64_C(0701000000000)+I_OP+I_ITS, INT64_C(0701440000000)+I_OP+I_ITS, INT64_C(0701540000000)+I_OP+I_ITS,
|
||||||
0702000000000+I_OP+I_ITS, 0702040000000+I_OP+I_ITS,
|
INT64_C(0702000000000)+I_OP+I_ITS, INT64_C(0702040000000)+I_OP+I_ITS,
|
||||||
0702100000000+I_OP+I_ITS, 0702140000000+I_OP+I_ITS, 0702340000000+I_OP+I_ITS,
|
INT64_C(0702100000000)+I_OP+I_ITS, INT64_C(0702140000000)+I_OP+I_ITS, INT64_C(0702340000000)+I_OP+I_ITS,
|
||||||
0702400000000+I_OP+I_ITS, 0702440000000+I_OP+I_ITS,
|
INT64_C(0702400000000)+I_OP+I_ITS, INT64_C(0702440000000)+I_OP+I_ITS,
|
||||||
0702500000000+I_OP+I_ITS, 0702540000000+I_OP+I_ITS, 0702740000000+I_OP+I_ITS,
|
INT64_C(0702500000000)+I_OP+I_ITS, INT64_C(0702540000000)+I_OP+I_ITS, INT64_C(0702740000000)+I_OP+I_ITS,
|
||||||
|
|
||||||
0254040000000+I_OP, 0254100000000+I_OP,
|
INT64_C(0254040000000)+I_OP, INT64_C(0254100000000)+I_OP,
|
||||||
0254200000000+I_OP, 0254240000000+I_OP, 0254300000000+I_OP, 0254340000000+I_OP,
|
INT64_C(0254200000000)+I_OP, INT64_C(0254240000000)+I_OP, INT64_C(0254300000000)+I_OP, INT64_C(0254340000000)+I_OP,
|
||||||
0254500000000+I_OP, 0254600000000+I_OP, 0254640000000+I_OP, 0133000000000+I_OP,
|
INT64_C(0254500000000)+I_OP, INT64_C(0254600000000)+I_OP, INT64_C(0254640000000)+I_OP, INT64_C(0133000000000)+I_OP,
|
||||||
0255040000000+I_OP, 0255100000000+I_OP, 0255200000000+I_OP, 0255300000000+I_OP,
|
INT64_C(0255040000000)+I_OP, INT64_C(0255100000000)+I_OP, INT64_C(0255200000000)+I_OP, INT64_C(0255300000000)+I_OP,
|
||||||
0255400000000+I_OP,
|
INT64_C(0255400000000)+I_OP,
|
||||||
|
|
||||||
0700000000000+I_OP, 0700200000000+I_OP, 0700240000000+I_OP, 0700600000000+I_OP,
|
INT64_C(0700000000000)+I_OP, INT64_C(0700200000000)+I_OP, INT64_C(0700240000000)+I_OP, INT64_C(0700600000000)+I_OP,
|
||||||
0700640000000+I_OP, 0701040000000+I_OP, 0701100000000+I_OP, 0701140000000+I_OP,
|
INT64_C(0700640000000)+I_OP, INT64_C(0701040000000)+I_OP, INT64_C(0701100000000)+I_OP, INT64_C(0701140000000)+I_OP,
|
||||||
0701200000000+I_OP, 0701240000000+I_OP,
|
INT64_C(0701200000000)+I_OP, INT64_C(0701240000000)+I_OP,
|
||||||
0702000000000+I_OP, 0702040000000+I_OP, 0702100000000+I_OP, 0702140000000+I_OP,
|
INT64_C(0702000000000)+I_OP, INT64_C(0702040000000)+I_OP, INT64_C(0702100000000)+I_OP, INT64_C(0702140000000)+I_OP,
|
||||||
0702200000000+I_OP, 0702240000000+I_OP, 0702300000000+I_OP,
|
INT64_C(0702200000000)+I_OP, INT64_C(0702240000000)+I_OP, INT64_C(0702300000000)+I_OP,
|
||||||
0702400000000+I_OP, 0702440000000+I_OP, 0702500000000+I_OP, 0702540000000+I_OP,
|
INT64_C(0702400000000)+I_OP, INT64_C(0702440000000)+I_OP, INT64_C(0702500000000)+I_OP, INT64_C(0702540000000)+I_OP,
|
||||||
0702600000000+I_OP, 0702640000000+I_OP, 0702700000000+I_OP,
|
INT64_C(0702600000000)+I_OP, INT64_C(0702640000000)+I_OP, INT64_C(0702700000000)+I_OP,
|
||||||
|
|
||||||
0001000000000+I_AC, 0002000000000+I_AC, 0003000000000+I_AC,
|
INT64_C(0001000000000)+I_AC, INT64_C(0002000000000)+I_AC, INT64_C(0003000000000)+I_AC,
|
||||||
0004000000000+I_AC, 0005000000000+I_AC, 0006000000000+I_AC, 0007000000000+I_AC,
|
INT64_C(0004000000000)+I_AC, INT64_C(0005000000000)+I_AC, INT64_C(0006000000000)+I_AC, INT64_C(0007000000000)+I_AC,
|
||||||
0010000000000+I_AC, 0011000000000+I_AC, 0012000000000+I_AC, 0013000000000+I_AC,
|
INT64_C(0010000000000)+I_AC, INT64_C(0011000000000)+I_AC, INT64_C(0012000000000)+I_AC, INT64_C(0013000000000)+I_AC,
|
||||||
0014000000000+I_AC, 0015000000000+I_AC, 0016000000000+I_AC, 0017000000000+I_AC,
|
INT64_C(0014000000000)+I_AC, INT64_C(0015000000000)+I_AC, INT64_C(0016000000000)+I_AC, INT64_C(0017000000000)+I_AC,
|
||||||
0020000000000+I_AC, 0021000000000+I_AC, 0022000000000+I_AC, 0023000000000+I_AC,
|
INT64_C(0020000000000)+I_AC, INT64_C(0021000000000)+I_AC, INT64_C(0022000000000)+I_AC, INT64_C(0023000000000)+I_AC,
|
||||||
0024000000000+I_AC, 0025000000000+I_AC, 0026000000000+I_AC, 0027000000000+I_AC,
|
INT64_C(0024000000000)+I_AC, INT64_C(0025000000000)+I_AC, INT64_C(0026000000000)+I_AC, INT64_C(0027000000000)+I_AC,
|
||||||
0030000000000+I_AC, 0031000000000+I_AC, 0032000000000+I_AC, 0033000000000+I_AC,
|
INT64_C(0030000000000)+I_AC, INT64_C(0031000000000)+I_AC, INT64_C(0032000000000)+I_AC, INT64_C(0033000000000)+I_AC,
|
||||||
0034000000000+I_AC, 0035000000000+I_AC, 0036000000000+I_AC, 0037000000000+I_AC,
|
INT64_C(0034000000000)+I_AC, INT64_C(0035000000000)+I_AC, INT64_C(0036000000000)+I_AC, INT64_C(0037000000000)+I_AC,
|
||||||
0040000000000+I_AC, 0041000000000+I_AC, 0042000000000+I_AC, 0043000000000+I_AC,
|
INT64_C(0040000000000)+I_AC, INT64_C(0041000000000)+I_AC, INT64_C(0042000000000)+I_AC, INT64_C(0043000000000)+I_AC,
|
||||||
0044000000000+I_AC, 0045000000000+I_AC, 0046000000000+I_AC, 0047000000000+I_AC,
|
INT64_C(0044000000000)+I_AC, INT64_C(0045000000000)+I_AC, INT64_C(0046000000000)+I_AC, INT64_C(0047000000000)+I_AC,
|
||||||
0050000000000+I_AC, 0051000000000+I_AC, 0052000000000+I_AC, 0053000000000+I_AC,
|
INT64_C(0050000000000)+I_AC, INT64_C(0051000000000)+I_AC, INT64_C(0052000000000)+I_AC, INT64_C(0053000000000)+I_AC,
|
||||||
0054000000000+I_AC, 0055000000000+I_AC, 0056000000000+I_AC, 0057000000000+I_AC,
|
INT64_C(0054000000000)+I_AC, INT64_C(0055000000000)+I_AC, INT64_C(0056000000000)+I_AC, INT64_C(0057000000000)+I_AC,
|
||||||
0060000000000+I_AC, 0061000000000+I_AC, 0062000000000+I_AC, 0063000000000+I_AC,
|
INT64_C(0060000000000)+I_AC, INT64_C(0061000000000)+I_AC, INT64_C(0062000000000)+I_AC, INT64_C(0063000000000)+I_AC,
|
||||||
0064000000000+I_AC, 0065000000000+I_AC, 0066000000000+I_AC, 0067000000000+I_AC,
|
INT64_C(0064000000000)+I_AC, INT64_C(0065000000000)+I_AC, INT64_C(0066000000000)+I_AC, INT64_C(0067000000000)+I_AC,
|
||||||
0070000000000+I_AC, 0071000000000+I_AC, 0072000000000+I_AC, 0073000000000+I_AC,
|
INT64_C(0070000000000)+I_AC, INT64_C(0071000000000)+I_AC, INT64_C(0072000000000)+I_AC, INT64_C(0073000000000)+I_AC,
|
||||||
0074000000000+I_AC, 0075000000000+I_AC, 0076000000000+I_AC, 0077000000000+I_AC,
|
INT64_C(0074000000000)+I_AC, INT64_C(0075000000000)+I_AC, INT64_C(0076000000000)+I_AC, INT64_C(0077000000000)+I_AC,
|
||||||
|
|
||||||
0100000000000+I_AC, 0102000000000+I_AC, 0103000000000+I_AC,
|
INT64_C(0100000000000)+I_AC, INT64_C(0102000000000)+I_AC, INT64_C(0103000000000)+I_AC,
|
||||||
0104000000000+I_AC, 0105000000000+I_AC, 0106000000000+I_AC, 0107000000000+I_AC,
|
INT64_C(0104000000000)+I_AC, INT64_C(0105000000000)+I_AC, INT64_C(0106000000000)+I_AC, INT64_C(0107000000000)+I_AC,
|
||||||
0110000000000+I_AC, 0111000000000+I_AC, 0112000000000+I_AC, 0113000000000+I_AC,
|
INT64_C(0110000000000)+I_AC, INT64_C(0111000000000)+I_AC, INT64_C(0112000000000)+I_AC, INT64_C(0113000000000)+I_AC,
|
||||||
0114000000000+I_AC, 0115000000000+I_AC, 0116000000000+I_AC, 0117000000000+I_AC,
|
INT64_C(0114000000000)+I_AC, INT64_C(0115000000000)+I_AC, INT64_C(0116000000000)+I_AC, INT64_C(0117000000000)+I_AC,
|
||||||
0120000000000+I_AC, 0121000000000+I_AC, 0122000000000+I_AC, 0123000000000+I_AC,
|
INT64_C(0120000000000)+I_AC, INT64_C(0121000000000)+I_AC, INT64_C(0122000000000)+I_AC, INT64_C(0123000000000)+I_AC,
|
||||||
0124000000000+I_AC, 0125000000000+I_AC, 0126000000000+I_AC, 0127000000000+I_AC,
|
INT64_C(0124000000000)+I_AC, INT64_C(0125000000000)+I_AC, INT64_C(0126000000000)+I_AC, INT64_C(0127000000000)+I_AC,
|
||||||
0130000000000+I_AC, 0131000000000+I_AC, 0132000000000+I_AC, 0133000000000+I_AC,
|
INT64_C(0130000000000)+I_AC, INT64_C(0131000000000)+I_AC, INT64_C(0132000000000)+I_AC, INT64_C(0133000000000)+I_AC,
|
||||||
0134000000000+I_AC, 0135000000000+I_AC, 0136000000000+I_AC, 0137000000000+I_AC,
|
INT64_C(0134000000000)+I_AC, INT64_C(0135000000000)+I_AC, INT64_C(0136000000000)+I_AC, INT64_C(0137000000000)+I_AC,
|
||||||
0140000000000+I_AC, 0141000000000+I_AC, 0142000000000+I_AC, 0143000000000+I_AC,
|
INT64_C(0140000000000)+I_AC, INT64_C(0141000000000)+I_AC, INT64_C(0142000000000)+I_AC, INT64_C(0143000000000)+I_AC,
|
||||||
0144000000000+I_AC, 0145000000000+I_AC, 0146000000000+I_AC, 0147000000000+I_AC,
|
INT64_C(0144000000000)+I_AC, INT64_C(0145000000000)+I_AC, INT64_C(0146000000000)+I_AC, INT64_C(0147000000000)+I_AC,
|
||||||
0150000000000+I_AC, 0151000000000+I_AC, 0152000000000+I_AC, 0153000000000+I_AC,
|
INT64_C(0150000000000)+I_AC, INT64_C(0151000000000)+I_AC, INT64_C(0152000000000)+I_AC, INT64_C(0153000000000)+I_AC,
|
||||||
0154000000000+I_AC, 0155000000000+I_AC, 0156000000000+I_AC, 0157000000000+I_AC,
|
INT64_C(0154000000000)+I_AC, INT64_C(0155000000000)+I_AC, INT64_C(0156000000000)+I_AC, INT64_C(0157000000000)+I_AC,
|
||||||
0160000000000+I_AC, 0161000000000+I_AC, 0162000000000+I_AC, 0163000000000+I_AC,
|
INT64_C(0160000000000)+I_AC, INT64_C(0161000000000)+I_AC, INT64_C(0162000000000)+I_AC, INT64_C(0163000000000)+I_AC,
|
||||||
0164000000000+I_AC, 0165000000000+I_AC, 0166000000000+I_AC, 0167000000000+I_AC,
|
INT64_C(0164000000000)+I_AC, INT64_C(0165000000000)+I_AC, INT64_C(0166000000000)+I_AC, INT64_C(0167000000000)+I_AC,
|
||||||
0170000000000+I_AC, 0171000000000+I_AC, 0172000000000+I_AC, 0173000000000+I_AC,
|
INT64_C(0170000000000)+I_AC, INT64_C(0171000000000)+I_AC, INT64_C(0172000000000)+I_AC, INT64_C(0173000000000)+I_AC,
|
||||||
0174000000000+I_AC, 0175000000000+I_AC, 0176000000000+I_AC, 0177000000000+I_AC,
|
INT64_C(0174000000000)+I_AC, INT64_C(0175000000000)+I_AC, INT64_C(0176000000000)+I_AC, INT64_C(0177000000000)+I_AC,
|
||||||
|
|
||||||
0200000000000+I_AC, 0201000000000+I_AC, 0202000000000+I_AC, 0203000000000+I_AC,
|
INT64_C(0200000000000)+I_AC, INT64_C(0201000000000)+I_AC, INT64_C(0202000000000)+I_AC, INT64_C(0203000000000)+I_AC,
|
||||||
0204000000000+I_AC, 0205000000000+I_AC, 0206000000000+I_AC, 0207000000000+I_AC,
|
INT64_C(0204000000000)+I_AC, INT64_C(0205000000000)+I_AC, INT64_C(0206000000000)+I_AC, INT64_C(0207000000000)+I_AC,
|
||||||
0210000000000+I_AC, 0211000000000+I_AC, 0212000000000+I_AC, 0213000000000+I_AC,
|
INT64_C(0210000000000)+I_AC, INT64_C(0211000000000)+I_AC, INT64_C(0212000000000)+I_AC, INT64_C(0213000000000)+I_AC,
|
||||||
0214000000000+I_AC, 0215000000000+I_AC, 0216000000000+I_AC, 0217000000000+I_AC,
|
INT64_C(0214000000000)+I_AC, INT64_C(0215000000000)+I_AC, INT64_C(0216000000000)+I_AC, INT64_C(0217000000000)+I_AC,
|
||||||
0220000000000+I_AC, 0221000000000+I_AC, 0222000000000+I_AC, 0223000000000+I_AC,
|
INT64_C(0220000000000)+I_AC, INT64_C(0221000000000)+I_AC, INT64_C(0222000000000)+I_AC, INT64_C(0223000000000)+I_AC,
|
||||||
0224000000000+I_AC, 0225000000000+I_AC, 0226000000000+I_AC, 0227000000000+I_AC,
|
INT64_C(0224000000000)+I_AC, INT64_C(0225000000000)+I_AC, INT64_C(0226000000000)+I_AC, INT64_C(0227000000000)+I_AC,
|
||||||
0230000000000+I_AC, 0231000000000+I_AC, 0232000000000+I_AC, 0233000000000+I_AC,
|
INT64_C(0230000000000)+I_AC, INT64_C(0231000000000)+I_AC, INT64_C(0232000000000)+I_AC, INT64_C(0233000000000)+I_AC,
|
||||||
0234000000000+I_AC, 0235000000000+I_AC, 0236000000000+I_AC, 0237000000000+I_AC,
|
INT64_C(0234000000000)+I_AC, INT64_C(0235000000000)+I_AC, INT64_C(0236000000000)+I_AC, INT64_C(0237000000000)+I_AC,
|
||||||
0240000000000+I_AC, 0241000000000+I_AC, 0242000000000+I_AC, 0243000000000+I_AC,
|
INT64_C(0240000000000)+I_AC, INT64_C(0241000000000)+I_AC, INT64_C(0242000000000)+I_AC, INT64_C(0243000000000)+I_AC,
|
||||||
0244000000000+I_AC, 0245000000000+I_AC, 0246000000000+I_AC, 0247000000000+I_AC+I_ITS,
|
INT64_C(0244000000000)+I_AC, INT64_C(0245000000000)+I_AC, INT64_C(0246000000000)+I_AC, INT64_C(0247000000000)+I_AC+I_ITS,
|
||||||
0250000000000+I_AC, 0251000000000+I_AC, 0252000000000+I_AC, 0253000000000+I_AC,
|
INT64_C(0250000000000)+I_AC, INT64_C(0251000000000)+I_AC, INT64_C(0252000000000)+I_AC, INT64_C(0253000000000)+I_AC,
|
||||||
0254000000000+I_AC, 0255000000000+I_AC, 0256000000000+I_AC, 0257000000000+I_AC,
|
INT64_C(0254000000000)+I_AC, INT64_C(0255000000000)+I_AC, INT64_C(0256000000000)+I_AC, INT64_C(0257000000000)+I_AC,
|
||||||
0260000000000+I_AC, 0261000000000+I_AC, 0262000000000+I_AC, 0263000000000+I_AC,
|
INT64_C(0260000000000)+I_AC, INT64_C(0261000000000)+I_AC, INT64_C(0262000000000)+I_AC, INT64_C(0263000000000)+I_AC,
|
||||||
0264000000000+I_AC, 0265000000000+I_AC, 0266000000000+I_AC, 0267000000000+I_AC,
|
INT64_C(0264000000000)+I_AC, INT64_C(0265000000000)+I_AC, INT64_C(0266000000000)+I_AC, INT64_C(0267000000000)+I_AC,
|
||||||
0270000000000+I_AC, 0271000000000+I_AC, 0272000000000+I_AC, 0273000000000+I_AC,
|
INT64_C(0270000000000)+I_AC, INT64_C(0271000000000)+I_AC, INT64_C(0272000000000)+I_AC, INT64_C(0273000000000)+I_AC,
|
||||||
0274000000000+I_AC, 0275000000000+I_AC, 0276000000000+I_AC, 0277000000000+I_AC,
|
INT64_C(0274000000000)+I_AC, INT64_C(0275000000000)+I_AC, INT64_C(0276000000000)+I_AC, INT64_C(0277000000000)+I_AC,
|
||||||
|
|
||||||
0300000000000+I_AC, 0301000000000+I_AC, 0302000000000+I_AC, 0303000000000+I_AC,
|
INT64_C(0300000000000)+I_AC, INT64_C(0301000000000)+I_AC, INT64_C(0302000000000)+I_AC, INT64_C(0303000000000)+I_AC,
|
||||||
0304000000000+I_AC, 0305000000000+I_AC, 0306000000000+I_AC, 0307000000000+I_AC,
|
INT64_C(0304000000000)+I_AC, INT64_C(0305000000000)+I_AC, INT64_C(0306000000000)+I_AC, INT64_C(0307000000000)+I_AC,
|
||||||
0310000000000+I_AC, 0311000000000+I_AC, 0312000000000+I_AC, 0313000000000+I_AC,
|
INT64_C(0310000000000)+I_AC, INT64_C(0311000000000)+I_AC, INT64_C(0312000000000)+I_AC, INT64_C(0313000000000)+I_AC,
|
||||||
0314000000000+I_AC, 0315000000000+I_AC, 0316000000000+I_AC, 0317000000000+I_AC,
|
INT64_C(0314000000000)+I_AC, INT64_C(0315000000000)+I_AC, INT64_C(0316000000000)+I_AC, INT64_C(0317000000000)+I_AC,
|
||||||
0320000000000+I_AC, 0321000000000+I_AC, 0322000000000+I_AC, 0323000000000+I_AC,
|
INT64_C(0320000000000)+I_AC, INT64_C(0321000000000)+I_AC, INT64_C(0322000000000)+I_AC, INT64_C(0323000000000)+I_AC,
|
||||||
0324000000000+I_AC, 0325000000000+I_AC, 0326000000000+I_AC, 0327000000000+I_AC,
|
INT64_C(0324000000000)+I_AC, INT64_C(0325000000000)+I_AC, INT64_C(0326000000000)+I_AC, INT64_C(0327000000000)+I_AC,
|
||||||
0330000000000+I_AC, 0331000000000+I_AC, 0332000000000+I_AC, 0333000000000+I_AC,
|
INT64_C(0330000000000)+I_AC, INT64_C(0331000000000)+I_AC, INT64_C(0332000000000)+I_AC, INT64_C(0333000000000)+I_AC,
|
||||||
0334000000000+I_AC, 0335000000000+I_AC, 0336000000000+I_AC, 0337000000000+I_AC,
|
INT64_C(0334000000000)+I_AC, INT64_C(0335000000000)+I_AC, INT64_C(0336000000000)+I_AC, INT64_C(0337000000000)+I_AC,
|
||||||
0340000000000+I_AC, 0341000000000+I_AC, 0342000000000+I_AC, 0343000000000+I_AC,
|
INT64_C(0340000000000)+I_AC, INT64_C(0341000000000)+I_AC, INT64_C(0342000000000)+I_AC, INT64_C(0343000000000)+I_AC,
|
||||||
0344000000000+I_AC, 0345000000000+I_AC, 0346000000000+I_AC, 0347000000000+I_AC,
|
INT64_C(0344000000000)+I_AC, INT64_C(0345000000000)+I_AC, INT64_C(0346000000000)+I_AC, INT64_C(0347000000000)+I_AC,
|
||||||
0350000000000+I_AC, 0351000000000+I_AC, 0352000000000+I_AC, 0353000000000+I_AC,
|
INT64_C(0350000000000)+I_AC, INT64_C(0351000000000)+I_AC, INT64_C(0352000000000)+I_AC, INT64_C(0353000000000)+I_AC,
|
||||||
0354000000000+I_AC, 0355000000000+I_AC, 0356000000000+I_AC, 0357000000000+I_AC,
|
INT64_C(0354000000000)+I_AC, INT64_C(0355000000000)+I_AC, INT64_C(0356000000000)+I_AC, INT64_C(0357000000000)+I_AC,
|
||||||
0360000000000+I_AC, 0361000000000+I_AC, 0362000000000+I_AC, 0363000000000+I_AC,
|
INT64_C(0360000000000)+I_AC, INT64_C(0361000000000)+I_AC, INT64_C(0362000000000)+I_AC, INT64_C(0363000000000)+I_AC,
|
||||||
0364000000000+I_AC, 0365000000000+I_AC, 0366000000000+I_AC, 0367000000000+I_AC,
|
INT64_C(0364000000000)+I_AC, INT64_C(0365000000000)+I_AC, INT64_C(0366000000000)+I_AC, INT64_C(0367000000000)+I_AC,
|
||||||
0370000000000+I_AC, 0371000000000+I_AC, 0372000000000+I_AC, 0373000000000+I_AC,
|
INT64_C(0370000000000)+I_AC, INT64_C(0371000000000)+I_AC, INT64_C(0372000000000)+I_AC, INT64_C(0373000000000)+I_AC,
|
||||||
0374000000000+I_AC, 0375000000000+I_AC, 0376000000000+I_AC, 0377000000000+I_AC,
|
INT64_C(0374000000000)+I_AC, INT64_C(0375000000000)+I_AC, INT64_C(0376000000000)+I_AC, INT64_C(0377000000000)+I_AC,
|
||||||
|
|
||||||
0400000000000+I_AC, 0401000000000+I_AC, 0402000000000+I_AC, 0403000000000+I_AC,
|
INT64_C(0400000000000)+I_AC, INT64_C(0401000000000)+I_AC, INT64_C(0402000000000)+I_AC, INT64_C(0403000000000)+I_AC,
|
||||||
0404000000000+I_AC, 0405000000000+I_AC, 0406000000000+I_AC, 0407000000000+I_AC,
|
INT64_C(0404000000000)+I_AC, INT64_C(0405000000000)+I_AC, INT64_C(0406000000000)+I_AC, INT64_C(0407000000000)+I_AC,
|
||||||
0410000000000+I_AC, 0411000000000+I_AC, 0412000000000+I_AC, 0413000000000+I_AC,
|
INT64_C(0410000000000)+I_AC, INT64_C(0411000000000)+I_AC, INT64_C(0412000000000)+I_AC, INT64_C(0413000000000)+I_AC,
|
||||||
0414000000000+I_AC, 0415000000000+I_AC, 0416000000000+I_AC, 0417000000000+I_AC,
|
INT64_C(0414000000000)+I_AC, INT64_C(0415000000000)+I_AC, INT64_C(0416000000000)+I_AC, INT64_C(0417000000000)+I_AC,
|
||||||
0420000000000+I_AC, 0421000000000+I_AC, 0422000000000+I_AC, 0423000000000+I_AC,
|
INT64_C(0420000000000)+I_AC, INT64_C(0421000000000)+I_AC, INT64_C(0422000000000)+I_AC, INT64_C(0423000000000)+I_AC,
|
||||||
0424000000000+I_AC, 0425000000000+I_AC, 0426000000000+I_AC, 0427000000000+I_AC,
|
INT64_C(0424000000000)+I_AC, INT64_C(0425000000000)+I_AC, INT64_C(0426000000000)+I_AC, INT64_C(0427000000000)+I_AC,
|
||||||
0430000000000+I_AC, 0431000000000+I_AC, 0432000000000+I_AC, 0433000000000+I_AC,
|
INT64_C(0430000000000)+I_AC, INT64_C(0431000000000)+I_AC, INT64_C(0432000000000)+I_AC, INT64_C(0433000000000)+I_AC,
|
||||||
0434000000000+I_AC, 0435000000000+I_AC, 0436000000000+I_AC, 0437000000000+I_AC,
|
INT64_C(0434000000000)+I_AC, INT64_C(0435000000000)+I_AC, INT64_C(0436000000000)+I_AC, INT64_C(0437000000000)+I_AC,
|
||||||
0440000000000+I_AC, 0441000000000+I_AC, 0442000000000+I_AC, 0443000000000+I_AC,
|
INT64_C(0440000000000)+I_AC, INT64_C(0441000000000)+I_AC, INT64_C(0442000000000)+I_AC, INT64_C(0443000000000)+I_AC,
|
||||||
0444000000000+I_AC, 0445000000000+I_AC, 0446000000000+I_AC, 0447000000000+I_AC,
|
INT64_C(0444000000000)+I_AC, INT64_C(0445000000000)+I_AC, INT64_C(0446000000000)+I_AC, INT64_C(0447000000000)+I_AC,
|
||||||
0450000000000+I_AC, 0451000000000+I_AC, 0452000000000+I_AC, 0453000000000+I_AC,
|
INT64_C(0450000000000)+I_AC, INT64_C(0451000000000)+I_AC, INT64_C(0452000000000)+I_AC, INT64_C(0453000000000)+I_AC,
|
||||||
0454000000000+I_AC, 0455000000000+I_AC, 0456000000000+I_AC, 0457000000000+I_AC,
|
INT64_C(0454000000000)+I_AC, INT64_C(0455000000000)+I_AC, INT64_C(0456000000000)+I_AC, INT64_C(0457000000000)+I_AC,
|
||||||
0460000000000+I_AC, 0461000000000+I_AC, 0462000000000+I_AC, 0463000000000+I_AC,
|
INT64_C(0460000000000)+I_AC, INT64_C(0461000000000)+I_AC, INT64_C(0462000000000)+I_AC, INT64_C(0463000000000)+I_AC,
|
||||||
0464000000000+I_AC, 0465000000000+I_AC, 0466000000000+I_AC, 0467000000000+I_AC,
|
INT64_C(0464000000000)+I_AC, INT64_C(0465000000000)+I_AC, INT64_C(0466000000000)+I_AC, INT64_C(0467000000000)+I_AC,
|
||||||
0470000000000+I_AC, 0471000000000+I_AC, 0472000000000+I_AC, 0473000000000+I_AC,
|
INT64_C(0470000000000)+I_AC, INT64_C(0471000000000)+I_AC, INT64_C(0472000000000)+I_AC, INT64_C(0473000000000)+I_AC,
|
||||||
0474000000000+I_AC, 0475000000000+I_AC, 0476000000000+I_AC, 0477000000000+I_AC,
|
INT64_C(0474000000000)+I_AC, INT64_C(0475000000000)+I_AC, INT64_C(0476000000000)+I_AC, INT64_C(0477000000000)+I_AC,
|
||||||
|
|
||||||
0500000000000+I_AC, 0501000000000+I_AC, 0502000000000+I_AC, 0503000000000+I_AC,
|
INT64_C(0500000000000)+I_AC, INT64_C(0501000000000)+I_AC, INT64_C(0502000000000)+I_AC, INT64_C(0503000000000)+I_AC,
|
||||||
0504000000000+I_AC, 0505000000000+I_AC, 0506000000000+I_AC, 0507000000000+I_AC,
|
INT64_C(0504000000000)+I_AC, INT64_C(0505000000000)+I_AC, INT64_C(0506000000000)+I_AC, INT64_C(0507000000000)+I_AC,
|
||||||
0510000000000+I_AC, 0511000000000+I_AC, 0512000000000+I_AC, 0513000000000+I_AC,
|
INT64_C(0510000000000)+I_AC, INT64_C(0511000000000)+I_AC, INT64_C(0512000000000)+I_AC, INT64_C(0513000000000)+I_AC,
|
||||||
0514000000000+I_AC, 0515000000000+I_AC, 0516000000000+I_AC, 0517000000000+I_AC,
|
INT64_C(0514000000000)+I_AC, INT64_C(0515000000000)+I_AC, INT64_C(0516000000000)+I_AC, INT64_C(0517000000000)+I_AC,
|
||||||
0520000000000+I_AC, 0521000000000+I_AC, 0522000000000+I_AC, 0523000000000+I_AC,
|
INT64_C(0520000000000)+I_AC, INT64_C(0521000000000)+I_AC, INT64_C(0522000000000)+I_AC, INT64_C(0523000000000)+I_AC,
|
||||||
0524000000000+I_AC, 0525000000000+I_AC, 0526000000000+I_AC, 0527000000000+I_AC,
|
INT64_C(0524000000000)+I_AC, INT64_C(0525000000000)+I_AC, INT64_C(0526000000000)+I_AC, INT64_C(0527000000000)+I_AC,
|
||||||
0530000000000+I_AC, 0531000000000+I_AC, 0532000000000+I_AC, 0533000000000+I_AC,
|
INT64_C(0530000000000)+I_AC, INT64_C(0531000000000)+I_AC, INT64_C(0532000000000)+I_AC, INT64_C(0533000000000)+I_AC,
|
||||||
0534000000000+I_AC, 0535000000000+I_AC, 0536000000000+I_AC, 0537000000000+I_AC,
|
INT64_C(0534000000000)+I_AC, INT64_C(0535000000000)+I_AC, INT64_C(0536000000000)+I_AC, INT64_C(0537000000000)+I_AC,
|
||||||
0540000000000+I_AC, 0541000000000+I_AC, 0542000000000+I_AC, 0543000000000+I_AC,
|
INT64_C(0540000000000)+I_AC, INT64_C(0541000000000)+I_AC, INT64_C(0542000000000)+I_AC, INT64_C(0543000000000)+I_AC,
|
||||||
0544000000000+I_AC, 0545000000000+I_AC, 0546000000000+I_AC, 0547000000000+I_AC,
|
INT64_C(0544000000000)+I_AC, INT64_C(0545000000000)+I_AC, INT64_C(0546000000000)+I_AC, INT64_C(0547000000000)+I_AC,
|
||||||
0550000000000+I_AC, 0551000000000+I_AC, 0552000000000+I_AC, 0553000000000+I_AC,
|
INT64_C(0550000000000)+I_AC, INT64_C(0551000000000)+I_AC, INT64_C(0552000000000)+I_AC, INT64_C(0553000000000)+I_AC,
|
||||||
0554000000000+I_AC, 0555000000000+I_AC, 0556000000000+I_AC, 0557000000000+I_AC,
|
INT64_C(0554000000000)+I_AC, INT64_C(0555000000000)+I_AC, INT64_C(0556000000000)+I_AC, INT64_C(0557000000000)+I_AC,
|
||||||
0560000000000+I_AC, 0561000000000+I_AC, 0562000000000+I_AC, 0563000000000+I_AC,
|
INT64_C(0560000000000)+I_AC, INT64_C(0561000000000)+I_AC, INT64_C(0562000000000)+I_AC, INT64_C(0563000000000)+I_AC,
|
||||||
0564000000000+I_AC, 0565000000000+I_AC, 0566000000000+I_AC, 0567000000000+I_AC,
|
INT64_C(0564000000000)+I_AC, INT64_C(0565000000000)+I_AC, INT64_C(0566000000000)+I_AC, INT64_C(0567000000000)+I_AC,
|
||||||
0570000000000+I_AC, 0571000000000+I_AC, 0572000000000+I_AC, 0573000000000+I_AC,
|
INT64_C(0570000000000)+I_AC, INT64_C(0571000000000)+I_AC, INT64_C(0572000000000)+I_AC, INT64_C(0573000000000)+I_AC,
|
||||||
0574000000000+I_AC, 0575000000000+I_AC, 0576000000000+I_AC, 0577000000000+I_AC,
|
INT64_C(0574000000000)+I_AC, INT64_C(0575000000000)+I_AC, INT64_C(0576000000000)+I_AC, INT64_C(0577000000000)+I_AC,
|
||||||
|
|
||||||
0600000000000+I_AC, 0601000000000+I_AC, 0602000000000+I_AC, 0603000000000+I_AC,
|
INT64_C(0600000000000)+I_AC, INT64_C(0601000000000)+I_AC, INT64_C(0602000000000)+I_AC, INT64_C(0603000000000)+I_AC,
|
||||||
0604000000000+I_AC, 0605000000000+I_AC, 0606000000000+I_AC, 0607000000000+I_AC,
|
INT64_C(0604000000000)+I_AC, INT64_C(0605000000000)+I_AC, INT64_C(0606000000000)+I_AC, INT64_C(0607000000000)+I_AC,
|
||||||
0610000000000+I_AC, 0611000000000+I_AC, 0612000000000+I_AC, 0613000000000+I_AC,
|
INT64_C(0610000000000)+I_AC, INT64_C(0611000000000)+I_AC, INT64_C(0612000000000)+I_AC, INT64_C(0613000000000)+I_AC,
|
||||||
0614000000000+I_AC, 0615000000000+I_AC, 0616000000000+I_AC, 0617000000000+I_AC,
|
INT64_C(0614000000000)+I_AC, INT64_C(0615000000000)+I_AC, INT64_C(0616000000000)+I_AC, INT64_C(0617000000000)+I_AC,
|
||||||
0620000000000+I_AC, 0621000000000+I_AC, 0622000000000+I_AC, 0623000000000+I_AC,
|
INT64_C(0620000000000)+I_AC, INT64_C(0621000000000)+I_AC, INT64_C(0622000000000)+I_AC, INT64_C(0623000000000)+I_AC,
|
||||||
0624000000000+I_AC, 0625000000000+I_AC, 0626000000000+I_AC, 0627000000000+I_AC,
|
INT64_C(0624000000000)+I_AC, INT64_C(0625000000000)+I_AC, INT64_C(0626000000000)+I_AC, INT64_C(0627000000000)+I_AC,
|
||||||
0630000000000+I_AC, 0631000000000+I_AC, 0632000000000+I_AC, 0633000000000+I_AC,
|
INT64_C(0630000000000)+I_AC, INT64_C(0631000000000)+I_AC, INT64_C(0632000000000)+I_AC, INT64_C(0633000000000)+I_AC,
|
||||||
0634000000000+I_AC, 0635000000000+I_AC, 0636000000000+I_AC, 0637000000000+I_AC,
|
INT64_C(0634000000000)+I_AC, INT64_C(0635000000000)+I_AC, INT64_C(0636000000000)+I_AC, INT64_C(0637000000000)+I_AC,
|
||||||
0640000000000+I_AC, 0641000000000+I_AC, 0642000000000+I_AC, 0643000000000+I_AC,
|
INT64_C(0640000000000)+I_AC, INT64_C(0641000000000)+I_AC, INT64_C(0642000000000)+I_AC, INT64_C(0643000000000)+I_AC,
|
||||||
0644000000000+I_AC, 0645000000000+I_AC, 0646000000000+I_AC, 0647000000000+I_AC,
|
INT64_C(0644000000000)+I_AC, INT64_C(0645000000000)+I_AC, INT64_C(0646000000000)+I_AC, INT64_C(0647000000000)+I_AC,
|
||||||
0650000000000+I_AC, 0651000000000+I_AC, 0652000000000+I_AC, 0653000000000+I_AC,
|
INT64_C(0650000000000)+I_AC, INT64_C(0651000000000)+I_AC, INT64_C(0652000000000)+I_AC, INT64_C(0653000000000)+I_AC,
|
||||||
0654000000000+I_AC, 0655000000000+I_AC, 0656000000000+I_AC, 0657000000000+I_AC,
|
INT64_C(0654000000000)+I_AC, INT64_C(0655000000000)+I_AC, INT64_C(0656000000000)+I_AC, INT64_C(0657000000000)+I_AC,
|
||||||
0660000000000+I_AC, 0661000000000+I_AC, 0662000000000+I_AC, 0663000000000+I_AC,
|
INT64_C(0660000000000)+I_AC, INT64_C(0661000000000)+I_AC, INT64_C(0662000000000)+I_AC, INT64_C(0663000000000)+I_AC,
|
||||||
0664000000000+I_AC, 0665000000000+I_AC, 0666000000000+I_AC, 0667000000000+I_AC,
|
INT64_C(0664000000000)+I_AC, INT64_C(0665000000000)+I_AC, INT64_C(0666000000000)+I_AC, INT64_C(0667000000000)+I_AC,
|
||||||
0670000000000+I_AC, 0671000000000+I_AC, 0672000000000+I_AC, 0673000000000+I_AC,
|
INT64_C(0670000000000)+I_AC, INT64_C(0671000000000)+I_AC, INT64_C(0672000000000)+I_AC, INT64_C(0673000000000)+I_AC,
|
||||||
0674000000000+I_AC, 0675000000000+I_AC, 0676000000000+I_AC, 0677000000000+I_AC,
|
INT64_C(0674000000000)+I_AC, INT64_C(0675000000000)+I_AC, INT64_C(0676000000000)+I_AC, INT64_C(0677000000000)+I_AC,
|
||||||
|
|
||||||
0704000000000+I_AC, 0705000000000+I_AC,
|
INT64_C(0704000000000)+I_AC, INT64_C(0705000000000)+I_AC,
|
||||||
0710000000000+I_AC, 0711000000000+I_AC, 0712000000000+I_AC, 0713000000000+I_AC,
|
INT64_C(0710000000000)+I_AC, INT64_C(0711000000000)+I_AC, INT64_C(0712000000000)+I_AC, INT64_C(0713000000000)+I_AC,
|
||||||
0714000000000+I_AC, 0715000000000+I_AC, 0716000000000+I_AC, 0717000000000+I_AC,
|
INT64_C(0714000000000)+I_AC, INT64_C(0715000000000)+I_AC, INT64_C(0716000000000)+I_AC, INT64_C(0717000000000)+I_AC,
|
||||||
0720000000000+I_AC, 0721000000000+I_AC, 0722000000000+I_AC, 0723000000000+I_AC,
|
INT64_C(0720000000000)+I_AC, INT64_C(0721000000000)+I_AC, INT64_C(0722000000000)+I_AC, INT64_C(0723000000000)+I_AC,
|
||||||
0724000000000+I_AC, 0725000000000+I_AC,
|
INT64_C(0724000000000)+I_AC, INT64_C(0725000000000)+I_AC,
|
||||||
|
|
||||||
0700000000000+I_IO, 0700040000000+I_IO, 0700100000000+I_IO, 0700140000000+I_IO,
|
INT64_C(0700000000000)+I_IO, INT64_C(0700040000000)+I_IO, INT64_C(0700100000000)+I_IO, INT64_C(0700140000000)+I_IO,
|
||||||
0700200000000+I_IO, 0700240000000+I_IO, 0700300000000+I_IO, 0700340000000+I_IO,
|
INT64_C(0700200000000)+I_IO, INT64_C(0700240000000)+I_IO, INT64_C(0700300000000)+I_IO, INT64_C(0700340000000)+I_IO,
|
||||||
|
|
||||||
0400000000000+I_AC, 0401000000000+I_AC, 0402000000000+I_AC, 0403000000000+I_AC,
|
INT64_C(0400000000000)+I_AC, INT64_C(0401000000000)+I_AC, INT64_C(0402000000000)+I_AC, INT64_C(0403000000000)+I_AC,
|
||||||
0434000000000+I_AC, 0435000000000+I_AC, 0436000000000+I_AC, 0437000000000+I_AC,
|
INT64_C(0434000000000)+I_AC, INT64_C(0435000000000)+I_AC, INT64_C(0436000000000)+I_AC, INT64_C(0437000000000)+I_AC,
|
||||||
0415000000000+I_AC, 0501000000000+I_AC,
|
INT64_C(0415000000000)+I_AC, INT64_C(0501000000000)+I_AC,
|
||||||
|
|
||||||
0001000000000+I_AC, 0002000000000+I_AC, 0003000000000+I_AC,
|
INT64_C(0001000000000)+I_AC, INT64_C(0002000000000)+I_AC, INT64_C(0003000000000)+I_AC,
|
||||||
0004000000000+I_AC, 0005000000000+I_AC, 0006000000000+I_AC, 0007000000000+I_AC,
|
INT64_C(0004000000000)+I_AC, INT64_C(0005000000000)+I_AC, INT64_C(0006000000000)+I_AC, INT64_C(0007000000000)+I_AC,
|
||||||
0010000000000+I_AC, 0011000000000+I_AC, 0012000000000+I_AC, 0013000000000+I_AC,
|
INT64_C(0010000000000)+I_AC, INT64_C(0011000000000)+I_AC, INT64_C(0012000000000)+I_AC, INT64_C(0013000000000)+I_AC,
|
||||||
0014000000000+I_AC, 0015000000000+I_AC, 0016000000000+I_AC, 0017000000000+I_AC,
|
INT64_C(0014000000000)+I_AC, INT64_C(0015000000000)+I_AC, INT64_C(0016000000000)+I_AC, INT64_C(0017000000000)+I_AC,
|
||||||
0020000000000+I_AC, 0021000000000+I_AC, 0022000000000+I_AC, 0023000000000+I_AC,
|
INT64_C(0020000000000)+I_AC, INT64_C(0021000000000)+I_AC, INT64_C(0022000000000)+I_AC, INT64_C(0023000000000)+I_AC,
|
||||||
0024000000000+I_AC, 0025000000000+I_AC, 0026000000000+I_AC, 0027000000000+I_AC,
|
INT64_C(0024000000000)+I_AC, INT64_C(0025000000000)+I_AC, INT64_C(0026000000000)+I_AC, INT64_C(0027000000000)+I_AC,
|
||||||
0030000000000+I_AC, 0031000000000+I_AC,
|
INT64_C(0030000000000)+I_AC, INT64_C(0031000000000)+I_AC,
|
||||||
-1
|
-INT64_C(1)
|
||||||
};
|
};
|
||||||
|
|
||||||
#define NUMDEV 6
|
#define NUMDEV 6
|
||||||
|
|
140
PDP10/pdp10_tu.c
140
PDP10/pdp10_tu.c
|
@ -1194,79 +1194,79 @@ return sim_tape_detach (uptr);
|
||||||
#define BOOT_LEN (sizeof (boot_rom_dec) / sizeof (d10))
|
#define BOOT_LEN (sizeof (boot_rom_dec) / sizeof (d10))
|
||||||
|
|
||||||
static const d10 boot_rom_dec[] = {
|
static const d10 boot_rom_dec[] = {
|
||||||
0515040000003, /* boot:hrlzi 1,3 ; uba # */
|
INT64_C(0515040000003), /* boot:hrlzi 1,3 ; uba # */
|
||||||
0201000040001, /* movei 0,40001 ; vld,pg 1 */
|
INT64_C(0201000040001), /* movei 0,40001 ; vld,pg 1 */
|
||||||
0713001000000+(IOBA_UBMAP+1 & RMASK), /* wrio 0,763001(1); set ubmap */
|
INT64_C(0713001000000)+(IOBA_UBMAP+1 & RMASK), /* wrio 0,763001(1); set ubmap */
|
||||||
0435040000000+(IOBA_TU & RMASK), /* iori 1,772440 ; rh addr */
|
INT64_C(0435040000000)+(IOBA_TU & RMASK), /* iori 1,772440 ; rh addr */
|
||||||
0202040000000+FE_RHBASE, /* movem 1,FE_RHBASE */
|
INT64_C(0202040000000)+FE_RHBASE, /* movem 1,FE_RHBASE */
|
||||||
0201000000040, /* movei 0,40 ; ctrl reset */
|
INT64_C(0201000000040), /* movei 0,40 ; ctrl reset */
|
||||||
0713001000010, /* wrio 0,10(1) ; ->MTFS */
|
INT64_C(0713001000010), /* wrio 0,10(1) ; ->MTFS */
|
||||||
0201100000031, /* movei 2,31 ; space f */
|
INT64_C(0201100000031), /* movei 2,31 ; space f */
|
||||||
0265740377014, /* jsp 17,tpop ; skip ucode */
|
INT64_C(0265740377014), /* jsp 17,tpop ; skip ucode */
|
||||||
0201100000071, /* movei 2,71 ; read f */
|
INT64_C(0201100000071), /* movei 2,71 ; read f */
|
||||||
0265740377014, /* jsp 17,tpop ; read boot */
|
INT64_C(0265740377014), /* jsp 17,tpop ; read boot */
|
||||||
0254000001000, /* jrst 1000 ; start */
|
INT64_C(0254000001000), /* jrst 1000 ; start */
|
||||||
0200000000000+FE_MTFMT, /* tpop:move 0,FE_MTFMT ; den,fmt,slv */
|
INT64_C(0200000000000)+FE_MTFMT, /* tpop:move 0,FE_MTFMT ; den,fmt,slv */
|
||||||
0713001000032, /* wrio 0,32(1) ; ->MTTC */
|
INT64_C(0713001000032), /* wrio 0,32(1) ; ->MTTC */
|
||||||
0201000000011, /* movei 0,11 ; clr+go */
|
INT64_C(0201000000011), /* movei 0,11 ; clr+go */
|
||||||
0713001000000, /* wrio 0,0(1) ; ->MTCS1 */
|
INT64_C(0713001000000), /* wrio 0,0(1) ; ->MTCS1 */
|
||||||
0201140176000, /* movei 3,176000 ; wd cnt */
|
INT64_C(0201140176000), /* movei 3,176000 ; wd cnt */
|
||||||
0201200004000, /* movei 4,4000 ; addr */
|
INT64_C(0201200004000), /* movei 4,4000 ; addr */
|
||||||
0200240000000+FE_MTFMT, /* move 5,FE_MTFMT ; unit */
|
INT64_C(0200240000000)+FE_MTFMT, /* move 5,FE_MTFMT ; unit */
|
||||||
0201300000000, /* movei 6,0 ; fmtr */
|
INT64_C(0201300000000), /* movei 6,0 ; fmtr */
|
||||||
0713141000002, /* wrio 3,2(1) ; ->MTWC */
|
INT64_C(0713141000002), /* wrio 3,2(1) ; ->MTWC */
|
||||||
0713201000004, /* wrio 4,4(1) ; ->MTBA */
|
INT64_C(0713201000004), /* wrio 4,4(1) ; ->MTBA */
|
||||||
0713301000006, /* wrio 6,6(1) ; ->MTFC */
|
INT64_C(0713301000006), /* wrio 6,6(1) ; ->MTFC */
|
||||||
0713301000010, /* wrio 6,10(1) ; ->MTFS */
|
INT64_C(0713301000010), /* wrio 6,10(1) ; ->MTFS */
|
||||||
0713241000032, /* wrio 5,32(1) ; ->MTTC */
|
INT64_C(0713241000032), /* wrio 5,32(1) ; ->MTTC */
|
||||||
0713101000000, /* wrio 2,0(1) ; ->MTCS1 */
|
INT64_C(0713101000000), /* wrio 2,0(1) ; ->MTCS1 */
|
||||||
0712341000012, /* rdio 7,12(1) ; read FS */
|
INT64_C(0712341000012), /* rdio 7,12(1) ; read FS */
|
||||||
0606340000200, /* trnn 7,200 ; test rdy */
|
INT64_C(0606340000200), /* trnn 7,200 ; test rdy */
|
||||||
0254000377032, /* jrst .-2 ; loop */
|
INT64_C(0254000377032), /* jrst .-2 ; loop */
|
||||||
0606340040000, /* trnn 7,40000 ; test err */
|
INT64_C(0606340040000), /* trnn 7,40000 ; test err */
|
||||||
0254017000000, /* jrst 0(17) ; return */
|
INT64_C(0254017000000), /* jrst 0(17) ; return */
|
||||||
0712341000014, /* rdio 7,14(1) ; read err */
|
INT64_C(0712341000014), /* rdio 7,14(1) ; read err */
|
||||||
0302340001000, /* caie 7,1000 ; fce? */
|
INT64_C(0302340001000), /* caie 7,1000 ; fce? */
|
||||||
0254200377052, /* halt */
|
INT64_C(0254200377052), /* halt */
|
||||||
0254017000000, /* jrst 0(17) ; return */
|
INT64_C(0254017000000), /* jrst 0(17) ; return */
|
||||||
};
|
};
|
||||||
|
|
||||||
static const d10 boot_rom_its[] = {
|
static const d10 boot_rom_its[] = {
|
||||||
0515040000003, /* boot:hrlzi 1,3 ; uba # - not used */
|
INT64_C(0515040000003), /* boot:hrlzi 1,3 ; uba # - not used */
|
||||||
0201000040001, /* movei 0,40001 ; vld,pg 1 */
|
INT64_C(0201000040001), /* movei 0,40001 ; vld,pg 1 */
|
||||||
0714000000000+(IOBA_UBMAP+1 & RMASK), /* iowri 0,763001 ; set ubmap */
|
INT64_C(0714000000000)+(IOBA_UBMAP+1 & RMASK), /* iowri 0,763001 ; set ubmap */
|
||||||
0435040000000+(IOBA_TU & RMASK), /* iori 1,772440 ; rh addr */
|
INT64_C(0435040000000)+(IOBA_TU & RMASK), /* iori 1,772440 ; rh addr */
|
||||||
0202040000000+FE_RHBASE, /* movem 1,FE_RHBASE */
|
INT64_C(0202040000000)+FE_RHBASE, /* movem 1,FE_RHBASE */
|
||||||
0201000000040, /* movei 0,40 ; ctrl reset */
|
INT64_C(0201000000040), /* movei 0,40 ; ctrl reset */
|
||||||
0714001000010, /* iowri 0,10(1) ; ->MTFS */
|
INT64_C(0714001000010), /* iowri 0,10(1) ; ->MTFS */
|
||||||
0201100000031, /* movei 2,31 ; space f */
|
INT64_C(0201100000031), /* movei 2,31 ; space f */
|
||||||
0265740377014, /* jsp 17,tpop ; skip ucode */
|
INT64_C(0265740377014), /* jsp 17,tpop ; skip ucode */
|
||||||
0201100000071, /* movei 2,71 ; read f */
|
INT64_C(0201100000071), /* movei 2,71 ; read f */
|
||||||
0265740377014, /* jsp 17,tpop ; read boot */
|
INT64_C(0265740377014), /* jsp 17,tpop ; read boot */
|
||||||
0254000001000, /* jrst 1000 ; start */
|
INT64_C(0254000001000), /* jrst 1000 ; start */
|
||||||
0200000000000+FE_MTFMT, /* tpop:move 0,FE_MTFMT ; den,fmt,slv */
|
INT64_C(0200000000000)+FE_MTFMT, /* tpop:move 0,FE_MTFMT ; den,fmt,slv */
|
||||||
0714001000032, /* iowri 0,32(1) ; ->MTTC */
|
INT64_C(0714001000032), /* iowri 0,32(1) ; ->MTTC */
|
||||||
0201000000011, /* movei 0,11 ; clr+go */
|
INT64_C(0201000000011), /* movei 0,11 ; clr+go */
|
||||||
0714001000000, /* iowri 0,0(1) ; ->MTCS1 */
|
INT64_C(0714001000000), /* iowri 0,0(1) ; ->MTCS1 */
|
||||||
0201140176000, /* movei 3,176000 ; wd cnt */
|
INT64_C(0201140176000), /* movei 3,176000 ; wd cnt */
|
||||||
0201200004000, /* movei 4,4000 ; addr */
|
INT64_C(0201200004000), /* movei 4,4000 ; addr */
|
||||||
0200240000000+FE_MTFMT, /* move 5,FE_MTFMT ; unit */
|
INT64_C(0200240000000)+FE_MTFMT, /* move 5,FE_MTFMT ; unit */
|
||||||
0201300000000, /* movei 6,0 ; fmtr */
|
INT64_C(0201300000000), /* movei 6,0 ; fmtr */
|
||||||
0714141000002, /* iowri 3,2(1) ; ->MTWC */
|
INT64_C(0714141000002), /* iowri 3,2(1) ; ->MTWC */
|
||||||
0714201000004, /* iowri 4,4(1) ; ->MTBA */
|
INT64_C(0714201000004), /* iowri 4,4(1) ; ->MTBA */
|
||||||
0714301000006, /* iowri 6,6(1) ; ->MTFC */
|
INT64_C(0714301000006), /* iowri 6,6(1) ; ->MTFC */
|
||||||
0714301000010, /* iowri 6,10(1) ; ->MTFS */
|
INT64_C(0714301000010), /* iowri 6,10(1) ; ->MTFS */
|
||||||
0714241000032, /* iowri 5,32(1) ; ->MTTC */
|
INT64_C(0714241000032), /* iowri 5,32(1) ; ->MTTC */
|
||||||
0714101000000, /* iowri 2,0(1) ; ->MTCS1 */
|
INT64_C(0714101000000), /* iowri 2,0(1) ; ->MTCS1 */
|
||||||
0710341000012, /* iordi 7,12(1) ; read FS */
|
INT64_C(0710341000012), /* iordi 7,12(1) ; read FS */
|
||||||
0606340000200, /* trnn 7,200 ; test rdy */
|
INT64_C(0606340000200), /* trnn 7,200 ; test rdy */
|
||||||
0254000377032, /* jrst .-2 ; loop */
|
INT64_C(0254000377032), /* jrst .-2 ; loop */
|
||||||
0606340040000, /* trnn 7,40000 ; test err */
|
INT64_C(0606340040000), /* trnn 7,40000 ; test err */
|
||||||
0254017000000, /* jrst 0(17) ; return */
|
INT64_C(0254017000000), /* jrst 0(17) ; return */
|
||||||
0710341000014, /* iordi 7,14(1) ; read err */
|
INT64_C(0710341000014), /* iordi 7,14(1) ; read err */
|
||||||
0302340001000, /* caie 7,1000 ; fce? */
|
INT64_C(0302340001000), /* caie 7,1000 ; fce? */
|
||||||
0254200377052, /* halt */
|
INT64_C(0254200377052), /* halt */
|
||||||
0254017000000, /* jrst 0(17) ; return */
|
INT64_C(0254017000000), /* jrst 0(17) ; return */
|
||||||
};
|
};
|
||||||
|
|
||||||
t_stat tu_boot (int32 unitno, DEVICE *dptr)
|
t_stat tu_boot (int32 unitno, DEVICE *dptr)
|
||||||
|
|
|
@ -89,10 +89,10 @@
|
||||||
|
|
||||||
/* Translation control */
|
/* Translation control */
|
||||||
|
|
||||||
#define XT_LFLG 0400000000000 /* L flag */
|
#define XT_LFLG INT64_C(0400000000000) /* L flag */
|
||||||
#define XT_SFLG 0400000000000 /* S flag */
|
#define XT_SFLG INT64_C(0400000000000) /* S flag */
|
||||||
#define XT_NFLG 0200000000000 /* N flag */
|
#define XT_NFLG INT64_C(0200000000000) /* N flag */
|
||||||
#define XT_MFLG 0100000000000 /* M flag */
|
#define XT_MFLG INT64_C(0100000000000) /* M flag */
|
||||||
|
|
||||||
/* Translation table */
|
/* Translation table */
|
||||||
|
|
||||||
|
@ -104,10 +104,10 @@
|
||||||
|
|
||||||
/* AC masks */
|
/* AC masks */
|
||||||
|
|
||||||
#define XLNTMASK 0000777777777 /* length */
|
#define XLNTMASK INT64_C(0000777777777) /* length */
|
||||||
#define XFLGMASK 0700000000000 /* flags */
|
#define XFLGMASK INT64_C(0700000000000) /* flags */
|
||||||
#define XT_MBZ 0777000000000 /* must be zero */
|
#define XT_MBZ INT64_C(0777000000000) /* must be zero */
|
||||||
#define XT_MBZE 0047777000000 /* must be zero, edit */
|
#define XT_MBZE INT64_C(0047777000000) /* must be zero, edit */
|
||||||
|
|
||||||
/* Register change log */
|
/* Register change log */
|
||||||
|
|
||||||
|
@ -122,7 +122,7 @@
|
||||||
|
|
||||||
#define ED_V_PBYN 30 /* pattern byte # */
|
#define ED_V_PBYN 30 /* pattern byte # */
|
||||||
#define ED_M_PBYN 03
|
#define ED_M_PBYN 03
|
||||||
#define ED_PBYNO 0040000000000 /* overflow bit */
|
#define ED_PBYNO INT64_C(0040000000000) /* overflow bit */
|
||||||
#define ED_GETPBYN(x) ((int32) (((x) >> ED_V_PBYN) & ED_M_PBYN))
|
#define ED_GETPBYN(x) ((int32) (((x) >> ED_V_PBYN) & ED_M_PBYN))
|
||||||
#define ED_V_POPC 6 /* pattern byte opcode */
|
#define ED_V_POPC 6 /* pattern byte opcode */
|
||||||
#define ED_M_PAT 0777 /* pattern byte mask */
|
#define ED_M_PAT 0777 /* pattern byte mask */
|
||||||
|
@ -155,29 +155,29 @@ d10 xlate (d10 by, a10 tblad, d10 *xflgs, int32 pflgs);
|
||||||
void filldst (d10 fill, int32 ac, d10 cnt, int32 pflgs);
|
void filldst (d10 fill, int32 ac, d10 cnt, int32 pflgs);
|
||||||
|
|
||||||
static const d10 pwrs10[23][2] = {
|
static const d10 pwrs10[23][2] = {
|
||||||
0, 0,
|
INT64_C(0), INT64_C(0),
|
||||||
0, 1,
|
INT64_C(0), INT64_C(1),
|
||||||
0, 10,
|
INT64_C(0), INT64_C(10),
|
||||||
0, 100,
|
INT64_C(0), INT64_C(100),
|
||||||
0, 1000,
|
INT64_C(0), INT64_C(1000),
|
||||||
0, 10000,
|
INT64_C(0), INT64_C(10000),
|
||||||
0, 100000,
|
INT64_C(0), INT64_C(100000),
|
||||||
0, 1000000,
|
INT64_C(0), INT64_C(1000000),
|
||||||
0, 10000000,
|
INT64_C(0), INT64_C(10000000),
|
||||||
0, 100000000,
|
INT64_C(0), INT64_C(100000000),
|
||||||
0, 1000000000,
|
INT64_C(0), INT64_C(1000000000),
|
||||||
0, 10000000000,
|
INT64_C(0), INT64_C(10000000000),
|
||||||
2, 31280523264,
|
INT64_C(2), INT64_C(31280523264),
|
||||||
29, 3567587328,
|
INT64_C(29), INT64_C(3567587328),
|
||||||
291, 1316134912,
|
INT64_C(291), INT64_C(1316134912),
|
||||||
2910, 13161349120,
|
INT64_C(2910), INT64_C(13161349120),
|
||||||
29103, 28534276096,
|
INT64_C(29103), INT64_C(28534276096),
|
||||||
291038, 10464854016,
|
INT64_C(291038), INT64_C(10464854016),
|
||||||
2910383, 1569325056,
|
INT64_C(2910383), INT64_C(1569325056),
|
||||||
29103830, 15693250560,
|
INT64_C(29103830), INT64_C(15693250560),
|
||||||
291038304, 19493552128,
|
INT64_C(291038304), INT64_C(19493552128),
|
||||||
2910383045, 23136829440,
|
INT64_C(2910383045), INT64_C(23136829440),
|
||||||
29103830456, 25209864192
|
INT64_C(29103830456), INT64_C(25209864192)
|
||||||
};
|
};
|
||||||
|
|
||||||
int xtend (int32 ac, int32 ea, int32 pflgs)
|
int xtend (int32 ac, int32 ea, int32 pflgs)
|
||||||
|
|
|
@ -173,6 +173,9 @@ typedef unsigned long t_uint64;
|
||||||
#define t_int64 signed long long
|
#define t_int64 signed long long
|
||||||
#define t_uint64 unsigned long long
|
#define t_uint64 unsigned long long
|
||||||
#endif /* end 64b */
|
#endif /* end 64b */
|
||||||
|
#ifndef INT64_C
|
||||||
|
#define INT64_C(x) x ## LL
|
||||||
|
#endif
|
||||||
|
|
||||||
#if defined (USE_INT64) /* 64b data */
|
#if defined (USE_INT64) /* 64b data */
|
||||||
typedef t_int64 t_svalue; /* signed value */
|
typedef t_int64 t_svalue; /* signed value */
|
||||||
|
|
Loading…
Add table
Reference in a new issue