1: .title pst v095a11 permanent symbol table 2: 3: .ident /03apr4/ 4: 5: ; copyright 1972 digital equipment corporation 6: ; 15 nov 72 7: 8: .mcall (at) always 9: always 10: 11: .globl wrdsym ;pointer to .word 12: 13: dr1= 200 ;destructive reference in first field 14: dr2= 100 ;destructive reference in second field 15: 16: .globl dflgdg, dflgev, dflgbm, dflcnd, dflmac, dflsmc 17: 18: dflgdg= 040 ;data generating directive 19: dflgev= 020 ;directive requires even location 20: dflgbm= 010 ;directive uses byte mode 21: dflcnd= 004 ;conditional directive 22: dflmac= 002 ;macro directive 23: dflsmc= 001 ;mcall 24: 25: .if df pal11r ;pal11r subset 26: xmacro= 0 27: x40= 0 28: x45= 0 29: .endc 30: 31: .if df x40&x45 32: xfltg= 0 33: x4045= 0 34: .endc 35: 36: .iif df x45!xfltg, x45flt= 0 37: 38: .iif df x40!xfltg, x40flt= 0 39: 40: .iif df xmacro, xsml= 0 41: 42: .macro opcdef name, class, value, flags, cond 43: aaaa = 0 44: .if nb cond 45: aaaa = 1 46: .endc 47: ;.if ndf cond ; this assembler can assemble for any pdp-11 48: .rad50 /name/ 49: .byte flags+aaaa 50: .globl opcl'class 51: .byte 200+opcl'class 52: .word value 53: ;.endc 54: .endm 55: 56: .macro dirdef name, flags, cond 57: .rad50 /.'name/ 58: .byte flags+0, 0 59: .if df cond 60: .globl opcerr 61: .word opcerr 62: .iff 63: .globl name 64: .word name 65: .endc 66: .endm 67: 68: ;.psect pstsec con, shr ;pst is shareable 69: .psect pstsec con ; << not in v7 unix it aint! 70: 71: entsec pstsec 72: opcdef <absd >, 01, 170600, dr1, x45flt 73: opcdef <absf >, 01, 170600, dr1, x45flt 74: opcdef <adc >, 01, 005500, dr1 75: opcdef <adcb >, 01, 105500, dr1 76: opcdef <add >, 02, 060000, dr2 77: opcdef <addd >, 11, 172000, dr2, x45flt 78: opcdef <addf >, 11, 172000, dr2, x45flt 79: opcdef <ash >, 09, 072000, dr2, x4045 80: opcdef <ashc >, 09, 073000, dr2, x4045 81: opcdef <asl >, 01, 006300, dr1 82: opcdef <aslb >, 01, 106300, dr1 83: opcdef <asr >, 01, 006200, dr1 84: opcdef <asrb >, 01, 106200, dr1 85: opcdef <bcc >, 04, 103000, 86: opcdef <bcs >, 04, 103400, 87: opcdef <beq >, 04, 001400, 88: opcdef <bge >, 04, 002000, 89: opcdef <bgt >, 04, 003000, 90: opcdef <bhi >, 04, 101000, 91: opcdef <bhis >, 04, 103000, 92: opcdef <bic >, 02, 040000, dr2 93: opcdef <bicb >, 02, 140000, dr2 94: opcdef <bis >, 02, 050000, dr2 95: opcdef <bisb >, 02, 150000, dr2 96: opcdef <bit >, 02, 030000, 97: opcdef <bitb >, 02, 130000, 98: opcdef <ble >, 04, 003400, 99: opcdef <blo >, 04, 103400, 100: opcdef <blos >, 04, 101400, 101: opcdef <blt >, 04, 002400, 102: opcdef <bmi >, 04, 100400, 103: opcdef <bne >, 04, 001000, 104: opcdef <bpl >, 04, 100000, 105: opcdef <bpt >, 00, 000003, 106: opcdef <br >, 04, 000400, 107: opcdef <bvc >, 04, 102000, 108: opcdef <bvs >, 04, 102400, 109: opcdef <call >, 01, 004700, 110: opcdef <ccc >, 00, 000257, 111: opcdef <cfcc >, 00, 170000, , x45flt 112: opcdef <clc >, 00, 000241, 113: opcdef <cln >, 00, 000250, 114: opcdef <clr >, 01, 005000, dr1 115: opcdef <clrb >, 01, 105000, dr1 116: opcdef <clrd >, 01, 170400, dr1, x45flt 117: opcdef <clrf >, 01, 170400, dr1, x45flt 118: opcdef <clv >, 00, 000242, 119: opcdef <clz >, 00, 000244, 120: opcdef <cmp >, 02, 020000, 121: opcdef <cmpb >, 02, 120000, 122: opcdef <cmpd >, 11, 173400, , x45flt 123: opcdef <cmpf >, 11, 173400, , x45flt 124: opcdef <cnz >, 00, 000254, 125: opcdef <com >, 01, 005100, dr1 126: opcdef <comb >, 01, 105100, dr1 127: opcdef <dec >, 01, 005300, dr1 128: opcdef <decb >, 01, 105300, dr1 129: opcdef <div >, 07, 071000, dr2, x4045 130: opcdef <divd >, 11, 174400, dr2, x45flt 131: opcdef <divf >, 11, 174400, dr2, x45flt 132: opcdef <emt >, 06, 104000, 133: opcdef <fadd >, 03, 075000, dr1, x40flt 134: opcdef <fdiv >, 03, 075030, dr1, x40flt 135: opcdef <fmul >, 03, 075020, dr1, x40flt 136: opcdef <fsub >, 03, 075010, dr1, x40flt 137: opcdef <halt >, 00, 000000, 138: opcdef <inc >, 01, 005200, dr1 139: opcdef <incb >, 01, 105200, dr1 140: opcdef <iot >, 00, 000004, 141: opcdef <jmp >, 01, 000100, 142: opcdef <jsr >, 05, 004000, dr1 143: opcdef <ldcdf >, 11, 177400, dr2, x45flt 144: opcdef <ldcfd >, 11, 177400, dr2, x45flt 145: opcdef <ldcid >, 14, 177000, dr2, x45flt 146: opcdef <ldcif >, 14, 177000, dr2, x45flt 147: opcdef <ldcld >, 14, 177000, dr2, x45flt 148: opcdef <ldclf >, 14, 177000, dr2, x45flt 149: opcdef <ldd >, 11, 172400, dr2, x45flt 150: opcdef <ldexp >, 14, 176400, dr2, x45flt 151: opcdef <ldf >, 11, 172400, dr2, x45flt 152: opcdef <ldfps >, 01, 170100, , x45flt 153: opcdef <ldsc >, 00, 170004, , x45flt 154: opcdef <ldub >, 00, 170003, , x45flt 155: opcdef <mark >, 10, 006400, , x45 156: opcdef <mfpd >, 01, 106500, , x45 157: opcdef <mfpi >, 01, 006500, , x4045 158: opcdef <modd >, 11, 171400, dr2, x45flt 159: opcdef <modf >, 11, 171400, dr2, x45flt 160: opcdef <mov >, 02, 010000, dr2 161: opcdef <movb >, 02, 110000, dr2 162: opcdef <mtpd >, 01, 106600, dr1, x45 163: opcdef <mtpi >, 01, 006600, dr1, x4045 164: opcdef <mul >, 07, 070000, dr2, x4045 165: opcdef <muld >, 11, 171000, dr2, x45flt 166: opcdef <mulf >, 11, 171000, dr2, x45flt 167: opcdef <neg >, 01, 005400, dr1 168: opcdef <negb >, 01, 105400, dr1 169: opcdef <negd >, 01, 170700, dr1, x45flt 170: opcdef <negf >, 01, 170700, dr1, x45flt 171: opcdef <nop >, 00, 000240, 172: opcdef <reset >, 00, 000005, 173: opcdef <return>, 00, 000207, 174: opcdef <rol >, 01, 006100, dr1 175: opcdef <rolb >, 01, 106100, dr1 176: opcdef <ror >, 01, 006000, dr1 177: opcdef <rorb >, 01, 106000, dr1 178: opcdef <rti >, 00, 000002, 179: opcdef <rts >, 03, 000200, dr1 180: opcdef <rtt >, 00, 000006, 181: opcdef <sbc >, 01, 005600, dr1 182: opcdef <sbcb >, 01, 105600, dr1 183: opcdef <scc >, 00, 000277, 184: opcdef <sec >, 00, 000261, 185: opcdef <sen >, 00, 000270, 186: opcdef <setd >, 00, 170011, , x45flt 187: opcdef <setf >, 00, 170001, , x45flt 188: opcdef <seti >, 00, 170002, , x45flt 189: opcdef <setl >, 00, 170012, , x45flt 190: opcdef <sev >, 00, 000262, 191: opcdef <sez >, 00, 000264, 192: opcdef <sob >, 08, 077000, dr1, x4045 193: opcdef <spl >, 13, 000230, , x45 194: opcdef <sta0 >, 00, 170005, , x45flt 195: opcdef <stb0 >, 00, 170006, , x45flt 196: opcdef <stcdf >, 12, 176000, dr2, x45flt 197: opcdef <stcdi >, 12, 175400, dr2, x45flt 198: opcdef <stcdl >, 12, 175400, dr2, x45flt 199: opcdef <stcfd >, 12, 176000, dr2, x45flt 200: opcdef <stcfi >, 12, 175400, dr2, x45flt 201: opcdef <stcfl >, 12, 175400, dr2, x45flt 202: opcdef <std >, 12, 174000, dr2, x45flt 203: opcdef <stexp >, 12, 175000, dr2, x45flt 204: opcdef <stf >, 12, 174000, dr2, x45flt 205: opcdef <stfps >, 01, 170200, dr1, x45flt 206: opcdef <stq0 >, 00, 170007, , x45flt 207: opcdef <stst >, 01, 170300, dr1, x45flt 208: opcdef <sub >, 02, 160000, dr2 209: opcdef <subd >, 11, 173000, dr2, x45flt 210: opcdef <subf >, 11, 173000, dr2, x45flt 211: opcdef <swab >, 01, 000300, dr1 212: opcdef <sxt >, 01, 006700, dr1, x4045 213: opcdef <trap >, 06, 104400, 214: opcdef <tst >, 01, 005700, 215: opcdef <tstb >, 01, 105700, 216: opcdef <tstd >, 01, 170500, , x45flt 217: opcdef <tstf >, 01, 170500, , x45flt 218: opcdef <wait >, 00, 000001, 219: opcdef <xor >, 05, 074000, dr2, x4045 220: 221: dirdef <ascii>, dflgbm 222: dirdef <asciz>, dflgbm!dflgdg 223: dirdef <asect>, , xrel 224: dirdef <blkb > 225: dirdef <blkw >, dflgev 226: dirdef <byte >, dflgbm!dflgdg 227: dirdef <csect>, , xrel 228: dirdef <dsabl> 229: dirdef <enabl> 230: dirdef <end > 231: dirdef <endc >, dflcnd 232: dirdef <endm >, dflmac, xmacro 233: dirdef <endr >, dflmac, xmacro 234: dirdef <eot > 235: dirdef <error> 236: dirdef <even > 237: dirdef <flt2 >, dflgev!dflgdg, xfltg 238: dirdef <flt4 >, dflgev!dflgdg, xfltg 239: dirdef <globl>, , xrel 240: dirdef <ident> 241: dirdef <if >, dflcnd 242: dirdef <ifdf >, dflcnd 243: dirdef <ifeq >, dflcnd 244: dirdef <iff >, dflcnd 245: dirdef <ifg >, dflcnd 246: dirdef <ifge >, dflcnd 247: dirdef <ifgt >, dflcnd 248: dirdef <ifl >, dflcnd 249: dirdef <ifle >, dflcnd 250: dirdef <iflt >, dflcnd 251: dirdef <ifndf>, dflcnd 252: dirdef <ifne >, dflcnd 253: dirdef <ifnz >, dflcnd 254: dirdef <ift >, dflcnd 255: dirdef <iftf >, dflcnd 256: dirdef <ifz >, dflcnd 257: dirdef <iif > 258: dirdef <irp >, dflmac, xmacro 259: dirdef <irpc >, dflmac, xmacro 260: dirdef <limit>, dflgev!dflgdg, xrel 261: dirdef <list > 262: dirdef <macr >, dflmac, xmacro 263: dirdef <macro>, dflmac, xmacro 264: dirdef <mcall>, dflsmc, xsml 265: dirdef <mexit> , , xmacro 266: dirdef <narg > , , xmacro 267: dirdef <nchr > , , xmacro 268: dirdef <nlist> 269: dirdef <ntype> , , xmacro 270: dirdef <odd > 271: dirdef <page > 272: dirdef <print> 273: dirdef <psect> 274: dirdef <radix> 275: dirdef <rad50>, dflgev!dflgdg 276: dirdef <rem > 277: dirdef <rept >, dflmac, xmacro 278: dirdef <sbttl> 279: dirdef <title> 280: wrdsym: 281: dirdef <word >, dflgev!dflgdg 282: 283: 284: xitsec 285: 286: .end