Assembler for MIMD-TRAP2/3 (c) V.Angelov, v3.6, Dec 2007 SVN Revision 0, SVN Date 2007-12-27 Please send any comments to: angelov@kip.uni-heidelberg.de 18:34:25 / 21 Apr 2008 Source code file: src/PGtst.asm Memory initialisation file: Log file: wrk/cpu3.log Program memory size in words: 4096 Default constants, read from /cad/tools/bin/asm_mimd.inc 1 CPU3 = 2 CC_SIGNED = 0X14 3 CC_NSIGNED = 0X04 4 CC_ZERO = 0X11 5 CC_NZERO = 0X01 6 CC_OVERFL = 0X13 7 CC_NOVERFL = 0X03 8 CC_NEG = 0X12 9 CC_NNEG = 0X02 10 CC_CARRY = 0X10 11 CC_NCARRY = 0X00 12 CC_BUSY = 0X17 13 CC_NBUSY = 0X07 14 CC_DIVB = 0X15 15 CC_NDIVB = 0X05 16 CC_ERRDIV = 0X16 17 CC_NERRDIV = 0X06 18 CC_UNCOND = 0X0F 19 CC_EQ = 0X11 20 CC_NEQ = 0X01 21 CC_NEG = 0X12 22 CC_POS0 = 0X02 23 CC_LTS = 0X14 24 CC_GES = 0X04 25 CC_LTU = 0X10 26 CC_GEU = 0X00 27 CC_LES = 0X19 28 CC_GTS = 0X09 29 CC_LEU = 0X18 30 CC_GTU = 0X08 31 RR_BYTE = 3 32 RR_WORD = 1 33 RR_DWORD = 0 34 LRA1 = LRA 3, 35 LRA2 = LRA 1, 36 LRA4 = LRA 0, 37 LRA4+ = LRA+ 0, 38 XOR = EOR 39 NOT = COM 40 SHLT = SHL 41 ANDT = AND 42 R0 = PRF[0] 43 R1 = PRF[1] 44 R2 = PRF[2] 45 R3 = PRF[3] 46 R4 = PRF[4] 47 R5 = PRF[5] 48 R6 = PRF[6] 49 R7 = PRF[7] 50 R8 = PRF[8] 51 R9 = PRF[9] 52 R10 = PRF[10] 53 R11 = PRF[11] 54 R12 = PRF[12] 55 R13 = PRF[13] 56 R14 = PRF[14] 57 R15 = PRF[15] 58 G0 = GRF[0] 59 G1 = GRF[1] 60 G2 = GRF[2] 61 G3 = GRF[3] 62 G4 = GRF[4] 63 G5 = GRF[5] 64 G6 = GRF[6] 65 G7 = GRF[7] 66 G8 = GRF[8] 67 G9 = GRF[9] 68 G10 = GRF[10] 69 G11 = GRF[11] 70 G12 = GRF[12] 71 G13 = GRF[13] 72 G14 = GRF[14] 73 G15 = GRF[15] 74 F0 = FIT[0] 75 F1 = FIT[1] 76 F2 = FIT[2] 77 F3 = FIT[3] 78 F4 = FIT[4] 79 F5 = FIT[5] 80 F6 = FIT[6] 81 F7 = FIT[7] 82 F8 = FIT[8] 83 F9 = FIT[9] 84 F10 = FIT[10] 85 F11 = FIT[11] 86 F12 = FIT[12] 87 F13 = FIT[13] 88 F14 = FIT[14] 89 F15 = FIT[15] 90 C0 = CON[0] 91 C1 = CON[1] 92 C2 = CON[2] 93 C3 = CON[3] 94 C4 = CON[4] 95 C5 = CON[5] 96 C6 = CON[6] 97 C7 = CON[7] 98 C8 = CON[8] 99 C9 = CON[9] 100 C10 = CON[10] 101 C11 = CON[11] 102 C12 = CON[12] 103 C13 = CON[13] 104 C14 = CON[14] 105 C15 = CON[15] 106 ASM_SVN_REV = 0 1: ; Test program for prfs and grfs 2: ; The test is successful (no errors) if the output 3: #ifdef cpu0 4: #def NXT=0xA22 5: #def ITS=0xA20 6: #endif 7: #ifdef cpu1 8: #def NXT=0xA24 9: #def ITS=0xA22 10: #endif 11: #ifdef cpu2 12: #def NXT=0xA26 13: #def ITS=0xA24 14: #endif 15: 16: nop 0000 : 0000_0000_0000_0000_0000_0000 17: #ifdef cpu0 18: mov c0 r0 19: sgio r0 0xC00 ; error 20: jmpr cc_busy 0 21: sgio r0 0xC01 ; error 22: jmpr cc_busy 0 23: sgio r0 0xC02 ; error 24: jmpr cc_busy 0 25: sgio r0 0xC03 ; error 26: jmpr cc_busy 0 27: sgio r0 0xC08 ; error 28: jmpr cc_busy 0 29: sgio r0 0xC09 ; error 30: jmpr cc_busy 0 31: sgio r0 0xC0A ; error 32: jmpr cc_busy 0 33: sgio r0 0xC0B ; error 34: jmpr cc_busy 0 35: sgio r0 0xC10 ; error 36: jmpr cc_busy 0 37: sgio r0 0xC11 ; error 38: jmpr cc_busy 0 39: sgio r0 0xC12 ; error 40: jmpr cc_busy 0 41: sgio r0 0xC13 ; error 42: jmpr cc_busy 0 43: sgio r0 0xC18 ; error 44: jmpr cc_busy 0 45: sgio r0 0xC19 ; error 46: jmpr cc_busy 0 47: sgio r0 0xC1A ; error 48: jmpr cc_busy 0 49: sgio r0 0xC1B ; error 50: jmpr cc_busy 0 51: #else 52: nop 0001 : 0000_0000_0000_0000_0000_0000 53: nop 0002 : 0000_0000_0000_0000_0000_0000 54: nop 0003 : 0000_0000_0000_0000_0000_0000 55: nop 0004 : 0000_0000_0000_0000_0000_0000 56: nop 0005 : 0000_0000_0000_0000_0000_0000 57: nop 0006 : 0000_0000_0000_0000_0000_0000 58: nop 0007 : 0000_0000_0000_0000_0000_0000 59: nop 0008 : 0000_0000_0000_0000_0000_0000 60: nop 0009 : 0000_0000_0000_0000_0000_0000 61: nop 000A : 0000_0000_0000_0000_0000_0000 62: nop 000B : 0000_0000_0000_0000_0000_0000 63: nop 000C : 0000_0000_0000_0000_0000_0000 64: nop 000D : 0000_0000_0000_0000_0000_0000 65: nop 000E : 0000_0000_0000_0000_0000_0000 66: nop 000F : 0000_0000_0000_0000_0000_0000 67: nop 0010 : 0000_0000_0000_0000_0000_0000 68: nop 0011 : 0000_0000_0000_0000_0000_0000 69: nop 0012 : 0000_0000_0000_0000_0000_0000 70: nop 0013 : 0000_0000_0000_0000_0000_0000 71: nop 0014 : 0000_0000_0000_0000_0000_0000 72: nop 0015 : 0000_0000_0000_0000_0000_0000 73: nop 0016 : 0000_0000_0000_0000_0000_0000 74: nop 0017 : 0000_0000_0000_0000_0000_0000 75: nop 0018 : 0000_0000_0000_0000_0000_0000 76: nop 0019 : 0000_0000_0000_0000_0000_0000 77: nop 001A : 0000_0000_0000_0000_0000_0000 78: nop 001B : 0000_0000_0000_0000_0000_0000 79: nop 001C : 0000_0000_0000_0000_0000_0000 80: nop 001D : 0000_0000_0000_0000_0000_0000 81: nop 001E : 0000_0000_0000_0000_0000_0000 82: nop 001F : 0000_0000_0000_0000_0000_0000 83: nop 0020 : 0000_0000_0000_0000_0000_0000 84: nop 0021 : 0000_0000_0000_0000_0000_0000 85: 86: #endif 87: 88: mov c1 g0 0022 : 1100_0010_0000_0110_0011_0000 89: 90: shl 1 c1 g1 0023 : 1011_0010_0001_0110_0011_0001 91: shl 2 c1 g2 0024 : 1011_0010_0010_0110_0011_0010 92: shl 3 c1 g3 0025 : 1011_0010_0011_0110_0011_0011 93: shl 4 c1 g4 0026 : 1011_0010_0100_0110_0011_0100 94: shl 5 c1 g5 0027 : 1011_0010_0101_0110_0011_0101 95: shl 6 c1 g6 0028 : 1011_0010_0110_0110_0011_0110 96: shl 7 c1 g7 0029 : 1011_0010_0111_0110_0011_0111 97: shl 8 c1 g8 002A : 1011_0010_1000_0110_0011_1000 98: shl 9 c1 g9 002B : 1011_0010_1001_0110_0011_1001 99: shl 10 c1 g10 002C : 1011_0010_1010_0110_0011_1010 100: shl 11 c1 g11 002D : 1011_0010_1011_0110_0011_1011 101: shl 12 c1 g12 002E : 1011_0010_1100_0110_0011_1100 102: shl 13 c1 g13 002F : 1011_0010_1101_0110_0011_1101 103: shl 14 c1 g14 0030 : 1011_0010_1110_0110_0011_1110 104: shl 15 c1 g15 0031 : 1011_0010_1111_0110_0011_1111 105: mov c1 r0 0032 : 1100_0010_0000_0110_0010_0000 106: shl 1 c1 r1 0033 : 1011_0010_0001_0110_0010_0001 107: shl 2 c1 r2 0034 : 1011_0010_0010_0110_0010_0010 108: shl 3 c1 r3 0035 : 1011_0010_0011_0110_0010_0011 109: shl 4 c1 r4 0036 : 1011_0010_0100_0110_0010_0100 110: shl 5 c1 r5 0037 : 1011_0010_0101_0110_0010_0101 111: shl 6 c1 r6 0038 : 1011_0010_0110_0110_0010_0110 112: shl 7 c1 r7 0039 : 1011_0010_0111_0110_0010_0111 113: shl 8 c1 r8 003A : 1011_0010_1000_0110_0010_1000 114: shl 9 c1 r9 003B : 1011_0010_1001_0110_0010_1001 115: shl 10 c1 r10 003C : 1011_0010_1010_0110_0010_1010 116: shl 11 c1 r11 003D : 1011_0010_1011_0110_0010_1011 117: shl 12 c1 r12 003E : 1011_0010_1100_0110_0010_1100 118: shl 13 c1 r13 003F : 1011_0010_1101_0110_0010_1101 119: shl 14 c1 r14 0040 : 1011_0010_1110_0110_0010_1110 120: shl 15 c1 r15 0041 : 1011_0010_1111_0110_0010_1111 121: 122: comp: cmp r0 g0 0042 : 1000_1000_0000_0010_0000_0000 123: jmpr cc_zero 2 0043 : 0000_0100_0000_1000_1011_0001 124: sgio r0 0xC00 0044 : 0010_1000_0000_1100_0000_0000 125: com r0 r0 0045 : 1011_1110_0000_0000_0000_0000 126: com g0 g0 0046 : 1011_1110_0000_0010_0001_0000 127: cmp r0 g0 0047 : 1000_1000_0000_0010_0000_0000 128: jmpr cc_busy 0 0048 : 0000_0100_0000_1001_0001_0111 129: jmpr cc_zero 2 0049 : 0000_0100_0000_1001_0111_0001 130: sgio r0 0xC00 004A : 0010_1000_0000_1100_0000_0000 131: com r0 r0 004B : 1011_1110_0000_0000_0000_0000 132: com g0 g0 004C : 1011_1110_0000_0010_0001_0000 133: 134: cmp r1 g1 004D : 1000_1000_0001_0010_0010_0000 135: jmpr cc_busy 0 004E : 0000_0100_0000_1001_1101_0111 136: jmpr cc_zero 2 004F : 0000_0100_0000_1010_0011_0001 137: sgio r1 0xC01 0050 : 0010_1000_0001_1100_0000_0001 138: com r1 r1 0051 : 1011_1110_0000_0000_0010_0001 139: com g1 g1 0052 : 1011_1110_0000_0010_0011_0001 140: cmp r1 g1 0053 : 1000_1000_0001_0010_0010_0000 141: jmpr cc_busy 0 0054 : 0000_0100_0000_1010_1001_0111 142: jmpr cc_zero 2 0055 : 0000_0100_0000_1010_1111_0001 143: sgio r1 0xC01 0056 : 0010_1000_0001_1100_0000_0001 144: com r1 r1 0057 : 1011_1110_0000_0000_0010_0001 145: com g1 g1 0058 : 1011_1110_0000_0010_0011_0001 146: 147: cmp r2 g2 0059 : 1000_1000_0010_0010_0100_0000 148: jmpr cc_busy 0 005A : 0000_0100_0000_1011_0101_0111 149: jmpr cc_zero 2 005B : 0000_0100_0000_1011_1011_0001 150: sgio r2 0xC02 005C : 0010_1000_0010_1100_0000_0010 151: com r2 r2 005D : 1011_1110_0000_0000_0100_0010 152: com g2 g2 005E : 1011_1110_0000_0010_0101_0010 153: cmp r2 g2 005F : 1000_1000_0010_0010_0100_0000 154: jmpr cc_busy 0 0060 : 0000_0100_0000_1100_0001_0111 155: jmpr cc_zero 2 0061 : 0000_0100_0000_1100_0111_0001 156: sgio r2 0xC02 0062 : 0010_1000_0010_1100_0000_0010 157: com r2 r2 0063 : 1011_1110_0000_0000_0100_0010 158: com g2 g2 0064 : 1011_1110_0000_0010_0101_0010 159: 160: cmp r3 g3 0065 : 1000_1000_0011_0010_0110_0000 161: jmpr cc_busy 0 0066 : 0000_0100_0000_1100_1101_0111 162: jmpr cc_zero 2 0067 : 0000_0100_0000_1101_0011_0001 163: sgio r3 0xC03 0068 : 0010_1000_0011_1100_0000_0011 164: com r3 r3 0069 : 1011_1110_0000_0000_0110_0011 165: com g3 g3 006A : 1011_1110_0000_0010_0111_0011 166: cmp r3 g3 006B : 1000_1000_0011_0010_0110_0000 167: jmpr cc_busy 0 006C : 0000_0100_0000_1101_1001_0111 168: jmpr cc_zero 2 006D : 0000_0100_0000_1101_1111_0001 169: sgio r3 0xC03 006E : 0010_1000_0011_1100_0000_0011 170: com r3 r3 006F : 1011_1110_0000_0000_0110_0011 171: com g3 g3 0070 : 1011_1110_0000_0010_0111_0011 172: 173: cmp r4 g4 0071 : 1000_1000_0100_0010_1000_0000 174: jmpr cc_busy 0 0072 : 0000_0100_0000_1110_0101_0111 175: jmpr cc_zero 2 0073 : 0000_0100_0000_1110_1011_0001 176: sgio r4 0xC08 0074 : 0010_1000_0100_1100_0000_1000 177: com r4 r4 0075 : 1011_1110_0000_0000_1000_0100 178: com g4 g4 0076 : 1011_1110_0000_0010_1001_0100 179: cmp r4 g4 0077 : 1000_1000_0100_0010_1000_0000 180: jmpr cc_busy 0 0078 : 0000_0100_0000_1111_0001_0111 181: jmpr cc_zero 2 0079 : 0000_0100_0000_1111_0111_0001 182: sgio r4 0xC08 007A : 0010_1000_0100_1100_0000_1000 183: com r4 r4 007B : 1011_1110_0000_0000_1000_0100 184: com g4 g4 007C : 1011_1110_0000_0010_1001_0100 185: 186: cmp r5 g5 007D : 1000_1000_0101_0010_1010_0000 187: jmpr cc_busy 0 007E : 0000_0100_0000_1111_1101_0111 188: jmpr cc_zero 2 007F : 0000_0100_0001_0000_0011_0001 189: sgio r5 0xC09 0080 : 0010_1000_0101_1100_0000_1001 190: com r5 r5 0081 : 1011_1110_0000_0000_1010_0101 191: com g5 g5 0082 : 1011_1110_0000_0010_1011_0101 192: cmp r5 g5 0083 : 1000_1000_0101_0010_1010_0000 193: jmpr cc_busy 0 0084 : 0000_0100_0001_0000_1001_0111 194: jmpr cc_zero 2 0085 : 0000_0100_0001_0000_1111_0001 195: sgio r5 0xC09 0086 : 0010_1000_0101_1100_0000_1001 196: com r5 r5 0087 : 1011_1110_0000_0000_1010_0101 197: com g5 g5 0088 : 1011_1110_0000_0010_1011_0101 198: 199: cmp r6 g6 0089 : 1000_1000_0110_0010_1100_0000 200: jmpr cc_busy 0 008A : 0000_0100_0001_0001_0101_0111 201: jmpr cc_zero 2 008B : 0000_0100_0001_0001_1011_0001 202: sgio r6 0xC0A 008C : 0010_1000_0110_1100_0000_1010 203: com r6 r6 008D : 1011_1110_0000_0000_1100_0110 204: com g6 g6 008E : 1011_1110_0000_0010_1101_0110 205: cmp r6 g6 008F : 1000_1000_0110_0010_1100_0000 206: jmpr cc_busy 0 0090 : 0000_0100_0001_0010_0001_0111 207: jmpr cc_zero 2 0091 : 0000_0100_0001_0010_0111_0001 208: sgio r6 0xC0A 0092 : 0010_1000_0110_1100_0000_1010 209: com r6 r6 0093 : 1011_1110_0000_0000_1100_0110 210: com g6 g6 0094 : 1011_1110_0000_0010_1101_0110 211: 212: cmp r7 g7 0095 : 1000_1000_0111_0010_1110_0000 213: jmpr cc_busy 0 0096 : 0000_0100_0001_0010_1101_0111 214: jmpr cc_zero 2 0097 : 0000_0100_0001_0011_0011_0001 215: sgio r7 0xC0B 0098 : 0010_1000_0111_1100_0000_1011 216: com r7 r7 0099 : 1011_1110_0000_0000_1110_0111 217: com g7 g7 009A : 1011_1110_0000_0010_1111_0111 218: cmp r7 g7 009B : 1000_1000_0111_0010_1110_0000 219: jmpr cc_busy 0 009C : 0000_0100_0001_0011_1001_0111 220: jmpr cc_zero 2 009D : 0000_0100_0001_0011_1111_0001 221: sgio r7 0xC0B 009E : 0010_1000_0111_1100_0000_1011 222: com r7 r7 009F : 1011_1110_0000_0000_1110_0111 223: com g7 g7 00A0 : 1011_1110_0000_0010_1111_0111 224: 225: cmp r8 g8 00A1 : 1000_1000_1000_0011_0000_0000 226: jmpr cc_busy 0 00A2 : 0000_0100_0001_0100_0101_0111 227: jmpr cc_zero 2 00A3 : 0000_0100_0001_0100_1011_0001 228: sgio r8 0xC10 00A4 : 0010_1000_1000_1100_0001_0000 229: com r8 r8 00A5 : 1011_1110_0000_0001_0000_1000 230: com g8 g8 00A6 : 1011_1110_0000_0011_0001_1000 231: cmp r8 g8 00A7 : 1000_1000_1000_0011_0000_0000 232: jmpr cc_busy 0 00A8 : 0000_0100_0001_0101_0001_0111 233: jmpr cc_zero 2 00A9 : 0000_0100_0001_0101_0111_0001 234: sgio r8 0xC10 00AA : 0010_1000_1000_1100_0001_0000 235: com r8 r8 00AB : 1011_1110_0000_0001_0000_1000 236: com g8 g8 00AC : 1011_1110_0000_0011_0001_1000 237: 238: cmp r9 g9 00AD : 1000_1000_1001_0011_0010_0000 239: jmpr cc_busy 0 00AE : 0000_0100_0001_0101_1101_0111 240: jmpr cc_zero 2 00AF : 0000_0100_0001_0110_0011_0001 241: sgio r9 0xC11 00B0 : 0010_1000_1001_1100_0001_0001 242: com r9 r9 00B1 : 1011_1110_0000_0001_0010_1001 243: com g9 g9 00B2 : 1011_1110_0000_0011_0011_1001 244: cmp r9 g9 00B3 : 1000_1000_1001_0011_0010_0000 245: jmpr cc_busy 0 00B4 : 0000_0100_0001_0110_1001_0111 246: jmpr cc_zero 2 00B5 : 0000_0100_0001_0110_1111_0001 247: sgio r9 0xC11 00B6 : 0010_1000_1001_1100_0001_0001 248: com r9 r9 00B7 : 1011_1110_0000_0001_0010_1001 249: com g9 g9 00B8 : 1011_1110_0000_0011_0011_1001 250: 251: cmp r10 g10 00B9 : 1000_1000_1010_0011_0100_0000 252: jmpr cc_busy 0 00BA : 0000_0100_0001_0111_0101_0111 253: jmpr cc_zero 2 00BB : 0000_0100_0001_0111_1011_0001 254: sgio r10 0xC12 00BC : 0010_1000_1010_1100_0001_0010 255: com r10 r10 00BD : 1011_1110_0000_0001_0100_1010 256: com g10 g10 00BE : 1011_1110_0000_0011_0101_1010 257: cmp r10 g10 00BF : 1000_1000_1010_0011_0100_0000 258: jmpr cc_busy 0 00C0 : 0000_0100_0001_1000_0001_0111 259: jmpr cc_zero 2 00C1 : 0000_0100_0001_1000_0111_0001 260: sgio r10 0xC12 00C2 : 0010_1000_1010_1100_0001_0010 261: com r10 r10 00C3 : 1011_1110_0000_0001_0100_1010 262: com g10 g10 00C4 : 1011_1110_0000_0011_0101_1010 263: 264: cmp r11 g11 00C5 : 1000_1000_1011_0011_0110_0000 265: jmpr cc_busy 0 00C6 : 0000_0100_0001_1000_1101_0111 266: jmpr cc_zero 2 00C7 : 0000_0100_0001_1001_0011_0001 267: sgio r11 0xC13 00C8 : 0010_1000_1011_1100_0001_0011 268: com r11 r11 00C9 : 1011_1110_0000_0001_0110_1011 269: com g11 g11 00CA : 1011_1110_0000_0011_0111_1011 270: cmp r11 g11 00CB : 1000_1000_1011_0011_0110_0000 271: jmpr cc_busy 0 00CC : 0000_0100_0001_1001_1001_0111 272: jmpr cc_zero 2 00CD : 0000_0100_0001_1001_1111_0001 273: sgio r11 0xC13 00CE : 0010_1000_1011_1100_0001_0011 274: com r11 r11 00CF : 1011_1110_0000_0001_0110_1011 275: com g11 g11 00D0 : 1011_1110_0000_0011_0111_1011 276: 277: cmp r12 g12 00D1 : 1000_1000_1100_0011_1000_0000 278: jmpr cc_busy 0 00D2 : 0000_0100_0001_1010_0101_0111 279: jmpr cc_zero 2 00D3 : 0000_0100_0001_1010_1011_0001 280: sgio r12 0xC18 00D4 : 0010_1000_1100_1100_0001_1000 281: com r12 r12 00D5 : 1011_1110_0000_0001_1000_1100 282: com g12 g12 00D6 : 1011_1110_0000_0011_1001_1100 283: cmp r12 g12 00D7 : 1000_1000_1100_0011_1000_0000 284: jmpr cc_busy 0 00D8 : 0000_0100_0001_1011_0001_0111 285: jmpr cc_zero 2 00D9 : 0000_0100_0001_1011_0111_0001 286: sgio r12 0xC18 00DA : 0010_1000_1100_1100_0001_1000 287: com r12 r12 00DB : 1011_1110_0000_0001_1000_1100 288: com g12 g12 00DC : 1011_1110_0000_0011_1001_1100 289: 290: 291: cmp r13 g13 00DD : 1000_1000_1101_0011_1010_0000 292: jmpr cc_busy 0 00DE : 0000_0100_0001_1011_1101_0111 293: jmpr cc_zero 2 00DF : 0000_0100_0001_1100_0011_0001 294: sgio r13 0xC19 00E0 : 0010_1000_1101_1100_0001_1001 295: com r13 r13 00E1 : 1011_1110_0000_0001_1010_1101 296: com g13 g13 00E2 : 1011_1110_0000_0011_1011_1101 297: cmp r13 g13 00E3 : 1000_1000_1101_0011_1010_0000 298: jmpr cc_busy 0 00E4 : 0000_0100_0001_1100_1001_0111 299: jmpr cc_zero 2 00E5 : 0000_0100_0001_1100_1111_0001 300: sgio r13 0xC19 00E6 : 0010_1000_1101_1100_0001_1001 301: com r13 r13 00E7 : 1011_1110_0000_0001_1010_1101 302: com g13 g13 00E8 : 1011_1110_0000_0011_1011_1101 303: 304: cmp r14 g14 00E9 : 1000_1000_1110_0011_1100_0000 305: jmpr cc_busy 0 00EA : 0000_0100_0001_1101_0101_0111 306: jmpr cc_zero 2 00EB : 0000_0100_0001_1101_1011_0001 307: sgio r14 0xC1A 00EC : 0010_1000_1110_1100_0001_1010 308: com r14 r14 00ED : 1011_1110_0000_0001_1100_1110 309: com g14 g14 00EE : 1011_1110_0000_0011_1101_1110 310: cmp r14 g14 00EF : 1000_1000_1110_0011_1100_0000 311: jmpr cc_busy 0 00F0 : 0000_0100_0001_1110_0001_0111 312: jmpr cc_zero 2 00F1 : 0000_0100_0001_1110_0111_0001 313: sgio r14 0xC1A 00F2 : 0010_1000_1110_1100_0001_1010 314: com r14 r14 00F3 : 1011_1110_0000_0001_1100_1110 315: com g14 g14 00F4 : 1011_1110_0000_0011_1101_1110 316: 317: cmp r15 g15 00F5 : 1000_1000_1111_0011_1110_0000 318: jmpr cc_busy 0 00F6 : 0000_0100_0001_1110_1101_0111 319: jmpr cc_zero 2 00F7 : 0000_0100_0001_1111_0011_0001 320: sgio r15 0xC1B 00F8 : 0010_1000_1111_1100_0001_1011 321: com r15 r15 00F9 : 1011_1110_0000_0001_1110_1111 322: com g15 g15 00FA : 1011_1110_0000_0011_1111_1111 323: cmp r15 g15 00FB : 1000_1000_1111_0011_1110_0000 324: jmpr cc_busy 0 00FC : 0000_0100_0001_1111_1001_0111 325: jmpr cc_zero 2 00FD : 0000_0100_0001_1111_1111_0001 326: sgio r15 0xC1B 00FE : 0010_1000_1111_1100_0001_1011 327: com r15 r15 00FF : 1011_1110_0000_0001_1110_1111 328: com g15 g15 0100 : 1011_1110_0000_0011_1111_1111 329: 330: shl 1 g0 g0 0101 : 1011_0010_0001_0010_0001_0000 331: shl 1 r0 r0 0102 : 1011_0010_0001_0000_0000_0000 332: jmp cc_carry izh 0103 : 0000_0100_0000_0000_0001_0000 333: 334: shl 1 g1 g1 0104 : 1011_0010_0001_0010_0011_0001 335: shl 1 r1 r1 0105 : 1011_0010_0001_0000_0010_0001 336: jmpr cc_ncarry 3 0106 : 0000_0100_0010_0001_0010_0000 337: mov c1 g1 0107 : 1100_0010_0000_0110_0011_0001 338: mov c1 r1 0108 : 1100_0010_0000_0110_0010_0001 339: 340: shl 1 g2 g2 0109 : 1011_0010_0001_0010_0101_0010 341: shl 1 r2 r2 010A : 1011_0010_0001_0000_0100_0010 342: jmpr cc_ncarry 3 010B : 0000_0100_0010_0001_1100_0000 343: mov c1 g2 010C : 1100_0010_0000_0110_0011_0010 344: mov c1 r2 010D : 1100_0010_0000_0110_0010_0010 345: 346: shl 1 g3 g3 010E : 1011_0010_0001_0010_0111_0011 347: shl 1 r3 r3 010F : 1011_0010_0001_0000_0110_0011 348: jmpr cc_ncarry 3 0110 : 0000_0100_0010_0010_0110_0000 349: mov c1 g3 0111 : 1100_0010_0000_0110_0011_0011 350: mov c1 r3 0112 : 1100_0010_0000_0110_0010_0011 351: 352: shl 1 g4 g4 0113 : 1011_0010_0001_0010_1001_0100 353: shl 1 r4 r4 0114 : 1011_0010_0001_0000_1000_0100 354: jmpr cc_ncarry 3 0115 : 0000_0100_0010_0011_0000_0000 355: mov c1 g4 0116 : 1100_0010_0000_0110_0011_0100 356: mov c1 r4 0117 : 1100_0010_0000_0110_0010_0100 357: 358: shl 1 g5 g5 0118 : 1011_0010_0001_0010_1011_0101 359: shl 1 r5 r5 0119 : 1011_0010_0001_0000_1010_0101 360: jmpr cc_ncarry 3 011A : 0000_0100_0010_0011_1010_0000 361: mov c1 g5 011B : 1100_0010_0000_0110_0011_0101 362: mov c1 r5 011C : 1100_0010_0000_0110_0010_0101 363: 364: shl 1 g6 g6 011D : 1011_0010_0001_0010_1101_0110 365: shl 1 r6 r6 011E : 1011_0010_0001_0000_1100_0110 366: jmpr cc_ncarry 3 011F : 0000_0100_0010_0100_0100_0000 367: mov c1 g6 0120 : 1100_0010_0000_0110_0011_0110 368: mov c1 r6 0121 : 1100_0010_0000_0110_0010_0110 369: 370: shl 1 g7 g7 0122 : 1011_0010_0001_0010_1111_0111 371: shl 1 r7 r7 0123 : 1011_0010_0001_0000_1110_0111 372: jmpr cc_ncarry 3 0124 : 0000_0100_0010_0100_1110_0000 373: mov c1 g7 0125 : 1100_0010_0000_0110_0011_0111 374: mov c1 r7 0126 : 1100_0010_0000_0110_0010_0111 375: 376: shl 1 g8 g8 0127 : 1011_0010_0001_0011_0001_1000 377: shl 1 r8 r8 0128 : 1011_0010_0001_0001_0000_1000 378: jmpr cc_ncarry 3 0129 : 0000_0100_0010_0101_1000_0000 379: mov c1 g8 012A : 1100_0010_0000_0110_0011_1000 380: mov c1 r8 012B : 1100_0010_0000_0110_0010_1000 381: 382: shl 1 g9 g9 012C : 1011_0010_0001_0011_0011_1001 383: shl 1 r9 r9 012D : 1011_0010_0001_0001_0010_1001 384: jmpr cc_ncarry 3 012E : 0000_0100_0010_0110_0010_0000 385: mov c1 g9 012F : 1100_0010_0000_0110_0011_1001 386: mov c1 r9 0130 : 1100_0010_0000_0110_0010_1001 387: 388: shl 1 g10 g10 0131 : 1011_0010_0001_0011_0101_1010 389: shl 1 r10 r10 0132 : 1011_0010_0001_0001_0100_1010 390: jmpr cc_ncarry 3 0133 : 0000_0100_0010_0110_1100_0000 391: mov c1 g10 0134 : 1100_0010_0000_0110_0011_1010 392: mov c1 r10 0135 : 1100_0010_0000_0110_0010_1010 393: 394: shl 1 g11 g11 0136 : 1011_0010_0001_0011_0111_1011 395: shl 1 r11 r11 0137 : 1011_0010_0001_0001_0110_1011 396: jmpr cc_ncarry 3 0138 : 0000_0100_0010_0111_0110_0000 397: mov c1 g11 0139 : 1100_0010_0000_0110_0011_1011 398: mov c1 r11 013A : 1100_0010_0000_0110_0010_1011 399: 400: shl 1 g12 g12 013B : 1011_0010_0001_0011_1001_1100 401: shl 1 r12 r12 013C : 1011_0010_0001_0001_1000_1100 402: jmpr cc_ncarry 3 013D : 0000_0100_0010_1000_0000_0000 403: mov c1 g12 013E : 1100_0010_0000_0110_0011_1100 404: mov c1 r12 013F : 1100_0010_0000_0110_0010_1100 405: 406: shl 1 g13 g13 0140 : 1011_0010_0001_0011_1011_1101 407: shl 1 r13 r13 0141 : 1011_0010_0001_0001_1010_1101 408: jmpr cc_ncarry 3 0142 : 0000_0100_0010_1000_1010_0000 409: mov c1 g13 0143 : 1100_0010_0000_0110_0011_1101 410: mov c1 r13 0144 : 1100_0010_0000_0110_0010_1101 411: 412: shl 1 g14 g14 0145 : 1011_0010_0001_0011_1101_1110 413: shl 1 r14 r14 0146 : 1011_0010_0001_0001_1100_1110 414: jmpr cc_ncarry 3 0147 : 0000_0100_0010_1001_0100_0000 415: mov c1 g14 0148 : 1100_0010_0000_0110_0011_1110 416: mov c1 r14 0149 : 1100_0010_0000_0110_0010_1110 417: 418: shl 1 g15 g15 014A : 1011_0010_0001_0011_1111_1111 419: shl 1 r15 r15 014B : 1011_0010_0001_0001_1110_1111 420: jmpr cc_ncarry 3 014C : 0000_0100_0010_1001_1110_0000 421: mov c1 g15 014D : 1100_0010_0000_0110_0011_1111 422: mov c1 r15 014E : 1100_0010_0000_0110_0010_1111 423: jmp cc_uncond comp 014F : 0000_0100_0000_0000_0000_1111 424: 425: izh: nop 0150 : 0000_0000_0000_0000_0000_0000 426: 427: mov c1 g0 0151 : 1100_0010_0000_0110_0011_0000 428: shl 1 c1 g1 0152 : 1011_0010_0001_0110_0011_0001 429: shl 2 c1 g2 0153 : 1011_0010_0010_0110_0011_0010 430: shl 3 c1 g3 0154 : 1011_0010_0011_0110_0011_0011 431: shl 4 c1 g4 0155 : 1011_0010_0100_0110_0011_0100 432: shl 5 c1 g5 0156 : 1011_0010_0101_0110_0011_0101 433: shl 6 c1 g6 0157 : 1011_0010_0110_0110_0011_0110 434: shl 7 c1 g7 0158 : 1011_0010_0111_0110_0011_0111 435: mov c1 r0 0159 : 1100_0010_0000_0110_0010_0000 436: shl 1 c1 r1 015A : 1011_0010_0001_0110_0010_0001 437: shl 2 c1 r2 015B : 1011_0010_0010_0110_0010_0010 438: shl 3 c1 r3 015C : 1011_0010_0011_0110_0010_0011 439: shl 4 c1 r4 015D : 1011_0010_0100_0110_0010_0100 440: shl 5 c1 r5 015E : 1011_0010_0101_0110_0010_0101 441: shl 6 c1 r6 015F : 1011_0010_0110_0110_0010_0110 442: shl 7 c1 r7 0160 : 1011_0010_0111_0110_0010_0111 443: 444: cmpm: cmp r0 g0 0161 : 1000_1000_0000_0010_0000_0000 445: jmpr cc_busy 0 0162 : 0000_0100_0010_1100_0101_0111 446: jmpr cc_zero 2 0163 : 0000_0100_0010_1100_1011_0001 447: sgio r0 0xC00 0164 : 0010_1000_0000_1100_0000_0000 448: com r0 r0 0165 : 1011_1110_0000_0000_0000_0000 449: com g0 g0 0166 : 1011_1110_0000_0010_0001_0000 450: cmp r0 g0 0167 : 1000_1000_0000_0010_0000_0000 451: jmpr cc_busy 0 0168 : 0000_0100_0010_1101_0001_0111 452: jmpr cc_zero 2 0169 : 0000_0100_0010_1101_0111_0001 453: sgio r0 0xC00 016A : 0010_1000_0000_1100_0000_0000 454: com r0 r0 016B : 1011_1110_0000_0000_0000_0000 455: com g0 g0 016C : 1011_1110_0000_0010_0001_0000 456: 457: cmp r1 g1 016D : 1000_1000_0001_0010_0010_0000 458: jmpr cc_busy 0 016E : 0000_0100_0010_1101_1101_0111 459: jmpr cc_zero 2 016F : 0000_0100_0010_1110_0011_0001 460: sgio r1 0xC01 0170 : 0010_1000_0001_1100_0000_0001 461: com r1 r1 0171 : 1011_1110_0000_0000_0010_0001 462: com g1 g1 0172 : 1011_1110_0000_0010_0011_0001 463: cmp r1 g1 0173 : 1000_1000_0001_0010_0010_0000 464: jmpr cc_busy 0 0174 : 0000_0100_0010_1110_1001_0111 465: jmpr cc_zero 2 0175 : 0000_0100_0010_1110_1111_0001 466: sgio r1 0xC01 0176 : 0010_1000_0001_1100_0000_0001 467: com r1 r1 0177 : 1011_1110_0000_0000_0010_0001 468: com g1 g1 0178 : 1011_1110_0000_0010_0011_0001 469: 470: cmp r2 g2 0179 : 1000_1000_0010_0010_0100_0000 471: jmpr cc_busy 0 017A : 0000_0100_0010_1111_0101_0111 472: jmpr cc_zero 2 017B : 0000_0100_0010_1111_1011_0001 473: sgio r2 0xC02 017C : 0010_1000_0010_1100_0000_0010 474: com r2 r2 017D : 1011_1110_0000_0000_0100_0010 475: com g2 g2 017E : 1011_1110_0000_0010_0101_0010 476: cmp r2 g2 017F : 1000_1000_0010_0010_0100_0000 477: jmpr cc_busy 0 0180 : 0000_0100_0011_0000_0001_0111 478: jmpr cc_zero 2 0181 : 0000_0100_0011_0000_0111_0001 479: sgio r2 0xC02 0182 : 0010_1000_0010_1100_0000_0010 480: com r2 r2 0183 : 1011_1110_0000_0000_0100_0010 481: com g2 g2 0184 : 1011_1110_0000_0010_0101_0010 482: 483: cmp r3 g3 0185 : 1000_1000_0011_0010_0110_0000 484: jmpr cc_busy 0 0186 : 0000_0100_0011_0000_1101_0111 485: jmpr cc_zero 2 0187 : 0000_0100_0011_0001_0011_0001 486: sgio r3 0xC03 0188 : 0010_1000_0011_1100_0000_0011 487: com r3 r3 0189 : 1011_1110_0000_0000_0110_0011 488: com g3 g3 018A : 1011_1110_0000_0010_0111_0011 489: cmp r3 g3 018B : 1000_1000_0011_0010_0110_0000 490: jmpr cc_busy 0 018C : 0000_0100_0011_0001_1001_0111 491: jmpr cc_zero 2 018D : 0000_0100_0011_0001_1111_0001 492: sgio r3 0xC03 018E : 0010_1000_0011_1100_0000_0011 493: com r3 r3 018F : 1011_1110_0000_0000_0110_0011 494: com g3 g3 0190 : 1011_1110_0000_0010_0111_0011 495: 496: cmp r4 g4 0191 : 1000_1000_0100_0010_1000_0000 497: jmpr cc_busy 0 0192 : 0000_0100_0011_0010_0101_0111 498: jmpr cc_zero 2 0193 : 0000_0100_0011_0010_1011_0001 499: sgio r4 0xC08 0194 : 0010_1000_0100_1100_0000_1000 500: com r4 r4 0195 : 1011_1110_0000_0000_1000_0100 501: com g4 g4 0196 : 1011_1110_0000_0010_1001_0100 502: cmp r4 g4 0197 : 1000_1000_0100_0010_1000_0000 503: jmpr cc_busy 0 0198 : 0000_0100_0011_0011_0001_0111 504: jmpr cc_zero 2 0199 : 0000_0100_0011_0011_0111_0001 505: sgio r4 0xC08 019A : 0010_1000_0100_1100_0000_1000 506: com r4 r4 019B : 1011_1110_0000_0000_1000_0100 507: com g4 g4 019C : 1011_1110_0000_0010_1001_0100 508: 509: cmp r5 g5 019D : 1000_1000_0101_0010_1010_0000 510: jmpr cc_busy 0 019E : 0000_0100_0011_0011_1101_0111 511: jmpr cc_zero 2 019F : 0000_0100_0011_0100_0011_0001 512: sgio r5 0xC09 01A0 : 0010_1000_0101_1100_0000_1001 513: com r5 r5 01A1 : 1011_1110_0000_0000_1010_0101 514: com g5 g5 01A2 : 1011_1110_0000_0010_1011_0101 515: cmp r5 g5 01A3 : 1000_1000_0101_0010_1010_0000 516: jmpr cc_busy 0 01A4 : 0000_0100_0011_0100_1001_0111 517: jmpr cc_zero 2 01A5 : 0000_0100_0011_0100_1111_0001 518: sgio r5 0xC09 01A6 : 0010_1000_0101_1100_0000_1001 519: com r5 r5 01A7 : 1011_1110_0000_0000_1010_0101 520: com g5 g5 01A8 : 1011_1110_0000_0010_1011_0101 521: 522: cmp r6 g6 01A9 : 1000_1000_0110_0010_1100_0000 523: jmpr cc_busy 0 01AA : 0000_0100_0011_0101_0101_0111 524: jmpr cc_zero 2 01AB : 0000_0100_0011_0101_1011_0001 525: sgio r6 0xC0A 01AC : 0010_1000_0110_1100_0000_1010 526: com r6 r6 01AD : 1011_1110_0000_0000_1100_0110 527: com g6 g6 01AE : 1011_1110_0000_0010_1101_0110 528: cmp r6 g6 01AF : 1000_1000_0110_0010_1100_0000 529: jmpr cc_busy 0 01B0 : 0000_0100_0011_0110_0001_0111 530: jmpr cc_zero 2 01B1 : 0000_0100_0011_0110_0111_0001 531: sgio r6 0xC0A 01B2 : 0010_1000_0110_1100_0000_1010 532: com r6 r6 01B3 : 1011_1110_0000_0000_1100_0110 533: com g6 g6 01B4 : 1011_1110_0000_0010_1101_0110 534: 535: cmp r7 g7 01B5 : 1000_1000_0111_0010_1110_0000 536: jmpr cc_busy 0 01B6 : 0000_0100_0011_0110_1101_0111 537: jmpr cc_zero 2 01B7 : 0000_0100_0011_0111_0011_0001 538: sgio r7 0xC0B 01B8 : 0010_1000_0111_1100_0000_1011 539: com r7 r7 01B9 : 1011_1110_0000_0000_1110_0111 540: com g7 g7 01BA : 1011_1110_0000_0010_1111_0111 541: cmp r7 g7 01BB : 1000_1000_0111_0010_1110_0000 542: jmpr cc_busy 0 01BC : 0000_0100_0011_0111_1001_0111 543: jmpr cc_zero 2 01BD : 0000_0100_0011_0111_1111_0001 544: sgio r7 0xC0B 01BE : 0010_1000_0111_1100_0000_1011 545: com r7 r7 01BF : 1011_1110_0000_0000_1110_0111 546: com g7 g7 01C0 : 1011_1110_0000_0010_1111_0111 547: 548: shl 1 g0 g0 01C1 : 1011_0010_0001_0010_0001_0000 549: mul r0 c2 r0 01C2 : 1001_0000_0000_0110_0100_0000 550: nop 01C3 : 0000_0000_0000_0000_0000_0000 551: or r13 r13 r13 01C4 : 1010_1010_1101_0001_1010_1101 552: jmp cc_nzero kraj 01C5 : 0000_0100_0000_0000_0000_0001 553: 554: shl 1 g1 g1 01C6 : 1011_0010_0001_0010_0011_0001 555: mul r1 c2 r1 01C7 : 1001_0000_0001_0110_0100_0001 556: nop 01C8 : 0000_0000_0000_0000_0000_0000 557: or r13 r13 r13 01C9 : 1010_1010_1101_0001_1010_1101 558: jmpr cc_zero 3 01CA : 0000_0100_0011_1001_1011_0001 559: mov c1 g1 01CB : 1100_0010_0000_0110_0011_0001 560: mov c1 r1 01CC : 1100_0010_0000_0110_0010_0001 561: 562: shl 1 g2 g2 01CD : 1011_0010_0001_0010_0101_0010 563: mul r2 c2 r2 01CE : 1001_0000_0010_0110_0100_0010 564: nop 01CF : 0000_0000_0000_0000_0000_0000 565: or r13 r13 r13 01D0 : 1010_1010_1101_0001_1010_1101 566: jmpr cc_zero 3 01D1 : 0000_0100_0011_1010_1001_0001 567: mov c1 g2 01D2 : 1100_0010_0000_0110_0011_0010 568: mov c1 r2 01D3 : 1100_0010_0000_0110_0010_0010 569: 570: shl 1 g3 g3 01D4 : 1011_0010_0001_0010_0111_0011 571: mul r3 c2 r3 01D5 : 1001_0000_0011_0110_0100_0011 572: nop 01D6 : 0000_0000_0000_0000_0000_0000 573: or r13 r13 r13 01D7 : 1010_1010_1101_0001_1010_1101 574: jmpr cc_zero 3 01D8 : 0000_0100_0011_1011_0111_0001 575: mov c1 g3 01D9 : 1100_0010_0000_0110_0011_0011 576: mov c1 r3 01DA : 1100_0010_0000_0110_0010_0011 577: 578: shl 1 g4 g4 01DB : 1011_0010_0001_0010_1001_0100 579: mul r4 c2 r4 01DC : 1001_0000_0100_0110_0100_0100 580: nop 01DD : 0000_0000_0000_0000_0000_0000 581: or r13 r13 r13 01DE : 1010_1010_1101_0001_1010_1101 582: jmpr cc_zero 3 01DF : 0000_0100_0011_1100_0101_0001 583: mov c1 g4 01E0 : 1100_0010_0000_0110_0011_0100 584: mov c1 r4 01E1 : 1100_0010_0000_0110_0010_0100 585: 586: shl 1 g5 g5 01E2 : 1011_0010_0001_0010_1011_0101 587: mul r5 c2 r5 01E3 : 1001_0000_0101_0110_0100_0101 588: nop 01E4 : 0000_0000_0000_0000_0000_0000 589: or r13 r13 r13 01E5 : 1010_1010_1101_0001_1010_1101 590: jmpr cc_zero 3 01E6 : 0000_0100_0011_1101_0011_0001 591: mov c1 g5 01E7 : 1100_0010_0000_0110_0011_0101 592: mov c1 r5 01E8 : 1100_0010_0000_0110_0010_0101 593: 594: shl 1 g6 g6 01E9 : 1011_0010_0001_0010_1101_0110 595: mul r6 c2 r6 01EA : 1001_0000_0110_0110_0100_0110 596: nop 01EB : 0000_0000_0000_0000_0000_0000 597: or r13 r13 r13 01EC : 1010_1010_1101_0001_1010_1101 598: jmpr cc_zero 3 01ED : 0000_0100_0011_1110_0001_0001 599: mov c1 g6 01EE : 1100_0010_0000_0110_0011_0110 600: mov c1 r6 01EF : 1100_0010_0000_0110_0010_0110 601: 602: shl 1 g7 g7 01F0 : 1011_0010_0001_0010_1111_0111 603: mul r7 c2 r7 01F1 : 1001_0000_0111_0110_0100_0111 604: nop 01F2 : 0000_0000_0000_0000_0000_0000 605: or r13 r13 r13 01F3 : 1010_1010_1101_0001_1010_1101 606: jmpr cc_zero 3 01F4 : 0000_0100_0011_1110_1111_0001 607: mov c1 g7 01F5 : 1100_0010_0000_0110_0011_0111 608: mov c1 r7 01F6 : 1100_0010_0000_0110_0010_0111 609: jmp cc_uncond cmpm 01F7 : 0000_0100_0000_0000_0000_1111 610: 611: kraj: nop 01F8 : 0000_0000_0000_0000_0000_0000 612: #ifdef cpu3 613: ; mov c5 r0 614: ; sgio r0 0xC00 615: jmpr cc_busy 0 01F9 : 0000_0100_0011_1111_0011_0111 616: mov b0_0111 r0 01FA : 1100_0110_0000_0000_1110_0000 617: sgio r0 0xA26 01FB : 0010_1000_0000_1010_0010_0110 618: jmpr cc_busy 0 01FC : 0000_0100_0011_1111_1001_0111 619: sgio r0 0xA20 01FD : 0010_1000_0000_1010_0010_0000 620: jmpr cc_busy 0 01FE : 0000_0100_0011_1111_1101_0111 621: mov 0x012 r0 01FF : 1100_0110_0000_0010_0100_0000 622: sgio r0 0xA04 0200 : 0010_1000_0000_1010_0000_0100 623: jmpr cc_uncond 0 0201 : 0000_0100_0100_0000_0010_1111 624: #else 625: jmpr cc_busy 0 626: mov c1 r0 627: sgio r0 NXT 628: jmpr cc_busy 0 629: mov c0 r0 630: sgio r0 ITS 631: jmpr cc_uncond 0 632: #endif Source file read, 0 error(s), 0 warning(s).