Instructions for the UCSD Version II.0 p-Machine, 1979 ======================================== (* Typed in by Martin Hepperle, 2025 Beware: there may be typos) TAB separated tables can be imported into spreadsheet or text processing tools. *) Parameter Types =============== UB Unsigned Byte SB Signed Byte DB Don't Care Byte B Big W Word Sorted by Mnemonic ================== Mnemonics Parameters OpCode Description ABI 128 Absolute Value Integer ABR 129 Absolute Value Real ADI 130 Add Integer ADJ UB 160 Adjust Set ADR 131 Add Real BPT B 213 Break Point CBP UB 194 Call Base procedure CGP UB 207 Call Global Procedure CHK 136 Check Subrange Bounds CIP UB 174 Call Intermediate Procedure CLP UB 206 Call Local Procedure CSP UB 158 Call Standard Procedure (UB=2,3,4,7,8,9,10,11,...) CXP UB1,UB2 205 Call External Procedure DIF 133 Set Difference DVI 134 Divide Integer DVR 135 Divide Real EFJ SB 211 Equal False Jump EQU UB 175 Equal (UB=2,4,6,8,10,12) EQUI 195 Equal Integer FJP SB 161 False Jump FLO 137 Float Next to TOS FLT 138 Float TOS GEQ UB 176 Greater Equal (UB=2,4,6,8,10,12) GEQI 196 Greater Than or Equal Integer GRT UB 177 Greater (UB=2,4,6,8,10,12) GRTI 197 Greater Than Integer INC B 162 Increment IND B 163 Index INN 139 Set Membership INT 140 Set Intersection IXA B 164 Index Array IXP UB1,UB2 192 Index Packed Array IXS 155 Index String Array LAE UB,B 167 Load Extended Address LAND 132 Logical And LAO B 165 Load Global Address LDA DB,B 178 Load Intermediate Address LDB 190 Load Byte LDC UB, 179 Load Constant LDCI W 199 Load Constant Integer LDCN 159 Load Constant NIL LDE UB,B 157 Load Extended Word LDL B 202 Load Local LDM UB 188 Load Multiple LDO B 169 Load Global LDP 186 Load Packed Field LEQ UB 180 Lower Equal (UB=2,4,6,8,10,12) LEQI 200 Less Than or Equal Integer LES UB 181 Lesser Than (UB=2,4,6,8,10,12) LESI 201 Less Than Integer LLA B 198 Load Local Address LNOT 147 Logical Not LOD DB,B 182 Load Immediate LOR 141 Logical Or LPA UB, 208 Load Packed Array LSA UB, 166 Load Constant String Address MODI 142 Modulo Integers MOV B 168 Move MPI 143 Multiply Integer MPR 144 Multiply Real NEQ UB 183 Not Equal (UB=2,4,6,8,10,12) NEQI 203 Not Equal Integer NFJ SB 212 Not Equal False Jump NGl 145 Negate Integer NGR 146 Negate Real NOP 215 No Operation RBP DB 193 Return from Base procedure RNP DB 173 Return from Non-Base Procedure SAS UB 170 String Assign SBI 149 Subtract Integer SBR 150 Subtract Real SGS 151 Build Singleton Set SIND0 248 Short Index SIND1 249 Short Index SIND2 250 Short Index SIND3 251 Short Index SIND4 252 Short Index SIND5 253 Short Index SIND6 254 Short Index SIND7 255 Short Index SLDC0 0 Short Load Constant SLDC1 1 Short Load Constant SLDC10 10 Short Load Constant SLDC100 100 Short Load Constant SLDC101 101 Short Load Constant SLDC102 102 Short Load Constant SLDC103 103 Short Load Constant SLDC104 104 Short Load Constant SLDC105 105 Short Load Constant SLDC106 106 Short Load Constant SLDC107 107 Short Load Constant SLDC108 108 Short Load Constant SLDC109 109 Short Load Constant SLDC11 11 Short Load Constant SLDC110 110 Short Load Constant SLDC111 111 Short Load Constant SLDC112 112 Short Load Constant SLDC113 113 Short Load Constant SLDC114 114 Short Load Constant SLDC115 115 Short Load Constant SLDC116 116 Short Load Constant SLDC117 117 Short Load Constant SLDC118 118 Short Load Constant SLDC119 119 Short Load Constant SLDC12 12 Short Load Constant SLDC120 120 Short Load Constant SLDC121 121 Short Load Constant SLDC122 122 Short Load Constant SLDC123 123 Short Load Constant SLDC124 124 Short Load Constant SLDC125 125 Short Load Constant SLDC126 126 Short Load Constant SLDC126 126 Short Load Constant SLDC127 127 Short Load Constant SLDC13 13 Short Load Constant SLDC14 14 Short Load Constant SLDC15 15 Short Load Constant SLDC16 16 Short Load Constant SLDC17 17 Short Load Constant SLDC18 18 Short Load Constant SLDC19 19 Short Load Constant SLDC2 2 Short Load Constant SLDC20 20 Short Load Constant SLDC21 21 Short Load Constant SLDC22 22 Short Load Constant SLDC23 23 Short Load Constant SLDC24 24 Short Load Constant SLDC25 25 Short Load Constant SLDC26 26 Short Load Constant SLDC27 27 Short Load Constant SLDC28 28 Short Load Constant SLDC29 29 Short Load Constant SLDC3 3 Short Load Constant SLDC30 30 Short Load Constant SLDC31 31 Short Load Constant SLDC32 32 Short Load Constant SLDC33 33 Short Load Constant SLDC34 34 Short Load Constant SLDC35 35 Short Load Constant SLDC36 36 Short Load Constant SLDC37 37 Short Load Constant SLDC38 38 Short Load Constant SLDC39 39 Short Load Constant SLDC4 4 Short Load Constant SLDC40 40 Short Load Constant SLDC41 41 Short Load Constant SLDC42 42 Short Load Constant SLDC43 43 Short Load Constant SLDC44 44 Short Load Constant SLDC45 45 Short Load Constant SLDC46 46 Short Load Constant SLDC47 47 Short Load Constant SLDC48 48 Short Load Constant SLDC49 49 Short Load Constant SLDC5 5 Short Load Constant SLDC50 50 Short Load Constant SLDC51 51 Short Load Constant SLDC52 52 Short Load Constant SLDC53 53 Short Load Constant SLDC54 54 Short Load Constant SLDC55 55 Short Load Constant SLDC56 56 Short Load Constant SLDC57 57 Short Load Constant SLDC58 58 Short Load Constant SLDC59 59 Short Load Constant SLDC6 6 Short Load Constant SLDC60 60 Short Load Constant SLDC61 61 Short Load Constant SLDC62 62 Short Load Constant SLDC63 63 Short Load Constant SLDC64 64 Short Load Constant SLDC65 65 Short Load Constant SLDC66 66 Short Load Constant SLDC67 67 Short Load Constant SLDC68 68 Short Load Constant SLDC69 69 Short Load Constant SLDC7 7 Short Load Constant SLDC70 70 Short Load Constant SLDC71 71 Short Load Constant SLDC72 72 Short Load Constant SLDC73 73 Short Load Constant SLDC74 74 Short Load Constant SLDC75 75 Short Load Constant SLDC76 76 Short Load Constant SLDC77 77 Short Load Constant SLDC78 78 Short Load Constant SLDC79 79 Short Load Constant SLDC8 8 Short Load Constant SLDC80 80 Short Load Constant SLDC81 81 Short Load Constant SLDC82 82 Short Load Constant SLDC83 83 Short Load Constant SLDC84 84 Short Load Constant SLDC85 85 Short Load Constant SLDC86 86 Short Load Constant SLDC87 87 Short Load Constant SLDC88 88 Short Load Constant SLDC89 89 Short Load Constant SLDC9 9 Short Load Constant SLDC90 90 Short Load Constant SLDC91 91 Short Load Constant SLDC92 92 Short Load Constant SLDC93 93 Short Load Constant SLDC94 94 Short Load Constant SLDC95 95 Short Load Constant SLDC96 96 Short Load Constant SLDC97 97 Short Load Constant SLDC98 98 Short Load Constant SLDC99 99 Short Load Constant SLDL1 216 Short Load Local SLDL10 225 Short Load Local SLDL11 226 Short Load Local SLDL12 227 Short Load Local SLDL13 228 Short Load Local SLDL14 229 Short Load Local SLDL15 230 Short Load Local SLDL16 231 Short Load Local SLDL2 217 Short Load Local SLDL3 218 Short Load Local SLDL4 219 Short Load Local SLDL5 220 Short Load Local SLDL6 221 Short Load Local SLDL7 222 Short Load Local SLDL8 223 Short Load Local SLDL9 224 Short Load Local SLDO1 232 Short Load Global SLDO10 241 Short Load Global SLDO11 242 Short Load Global SLDO12 243 Short Load Global SLDO13 244 Short Load Global SLDO14 245 Short Load Global SLDO15 246 Short Load Global SLDO16 247 Short Load Global SLDO2 233 Short Load Global SLDO3 234 Short Load Global SLDO4 235 Short Load Global SLDO5 236 Short Load Global SLDO6 237 Short Load Global SLDO7 238 Short Load Global SLDO8 239 Short Load Global SLDO9 240 Short Load Global SQI 152 Square Integer SQR 153 Square Real SRO B 171 Store Global SRS 148 Subrange Set STB 191 Store Byte STE UB,B 209 Store extended Word STL B 204 Short Store Local STM UB 189 Store Multiple STO 154 Store STP 187 Store Packed Field STR DB,B 184 Store Intermediate UJP SB 185 Unconditional Jump UNI 156 Set Union XIT 214 Exit Operating System XJP W1,W2,W3, 172 Case Jump ??? 210 unused ??? Sorted by Opcode ================ Mnemonics Parameters OpCode Description SLDC0 0 Short Load Constant SLDC1 1 Short Load Constant SLDC2 2 Short Load Constant SLDC3 3 Short Load Constant SLDC4 4 Short Load Constant SLDC5 5 Short Load Constant SLDC6 6 Short Load Constant SLDC7 7 Short Load Constant SLDC8 8 Short Load Constant SLDC9 9 Short Load Constant SLDC10 10 Short Load Constant SLDC11 11 Short Load Constant SLDC12 12 Short Load Constant SLDC13 13 Short Load Constant SLDC14 14 Short Load Constant SLDC15 15 Short Load Constant SLDC16 16 Short Load Constant SLDC17 17 Short Load Constant SLDC18 18 Short Load Constant SLDC19 19 Short Load Constant SLDC20 20 Short Load Constant SLDC21 21 Short Load Constant SLDC22 22 Short Load Constant SLDC23 23 Short Load Constant SLDC24 24 Short Load Constant SLDC25 25 Short Load Constant SLDC26 26 Short Load Constant SLDC27 27 Short Load Constant SLDC28 28 Short Load Constant SLDC29 29 Short Load Constant SLDC30 30 Short Load Constant SLDC31 31 Short Load Constant SLDC32 32 Short Load Constant SLDC33 33 Short Load Constant SLDC34 34 Short Load Constant SLDC35 35 Short Load Constant SLDC36 36 Short Load Constant SLDC37 37 Short Load Constant SLDC38 38 Short Load Constant SLDC39 39 Short Load Constant SLDC40 40 Short Load Constant SLDC41 41 Short Load Constant SLDC42 42 Short Load Constant SLDC43 43 Short Load Constant SLDC44 44 Short Load Constant SLDC45 45 Short Load Constant SLDC46 46 Short Load Constant SLDC47 47 Short Load Constant SLDC48 48 Short Load Constant SLDC49 49 Short Load Constant SLDC50 50 Short Load Constant SLDC51 51 Short Load Constant SLDC52 52 Short Load Constant SLDC53 53 Short Load Constant SLDC54 54 Short Load Constant SLDC55 55 Short Load Constant SLDC56 56 Short Load Constant SLDC57 57 Short Load Constant SLDC58 58 Short Load Constant SLDC59 59 Short Load Constant SLDC60 60 Short Load Constant SLDC61 61 Short Load Constant SLDC62 62 Short Load Constant SLDC63 63 Short Load Constant SLDC64 64 Short Load Constant SLDC65 65 Short Load Constant SLDC66 66 Short Load Constant SLDC67 67 Short Load Constant SLDC68 68 Short Load Constant SLDC69 69 Short Load Constant SLDC70 70 Short Load Constant SLDC71 71 Short Load Constant SLDC72 72 Short Load Constant SLDC73 73 Short Load Constant SLDC74 74 Short Load Constant SLDC75 75 Short Load Constant SLDC76 76 Short Load Constant SLDC77 77 Short Load Constant SLDC78 78 Short Load Constant SLDC79 79 Short Load Constant SLDC80 80 Short Load Constant SLDC81 81 Short Load Constant SLDC82 82 Short Load Constant SLDC83 83 Short Load Constant SLDC84 84 Short Load Constant SLDC85 85 Short Load Constant SLDC86 86 Short Load Constant SLDC87 87 Short Load Constant SLDC88 88 Short Load Constant SLDC89 89 Short Load Constant SLDC90 90 Short Load Constant SLDC91 91 Short Load Constant SLDC92 92 Short Load Constant SLDC93 93 Short Load Constant SLDC94 94 Short Load Constant SLDC95 95 Short Load Constant SLDC96 96 Short Load Constant SLDC97 97 Short Load Constant SLDC98 98 Short Load Constant SLDC99 99 Short Load Constant SLDC100 100 Short Load Constant SLDC101 101 Short Load Constant SLDC102 102 Short Load Constant SLDC103 103 Short Load Constant SLDC104 104 Short Load Constant SLDC105 105 Short Load Constant SLDC106 106 Short Load Constant SLDC107 107 Short Load Constant SLDC108 108 Short Load Constant SLDC109 109 Short Load Constant SLDC110 110 Short Load Constant SLDC111 111 Short Load Constant SLDC112 112 Short Load Constant SLDC113 113 Short Load Constant SLDC114 114 Short Load Constant SLDC115 115 Short Load Constant SLDC116 116 Short Load Constant SLDC117 117 Short Load Constant SLDC118 118 Short Load Constant SLDC119 119 Short Load Constant SLDC120 120 Short Load Constant SLDC121 121 Short Load Constant SLDC122 122 Short Load Constant SLDC123 123 Short Load Constant SLDC124 124 Short Load Constant SLDC125 125 Short Load Constant SLDC126 126 Short Load Constant SLDC126 126 Short Load Constant SLDC127 127 Short Load Constant ABI 128 Absolute Value Integer ABR 129 Absolute Value Real ADI 130 Add Integer ADR 131 Add Real LAND 132 Logical And DIF 133 Set Difference DVI 134 Divide Integer DVR 135 Divide Real CHK 136 Check Subrange Bounds FLO 137 Float Next to TOS FLT 138 Float TOS INN 139 Set Membership INT 140 Set Intersection LOR 141 Logical Or MODI 142 Modulo Integers MPI 143 Multiply Integer MPR 144 Multiply Real NGl 145 Negate Integer NGR 146 Negate Real LNOT 147 Logical Not SRS 148 Subrange Set SBI 149 Subtract Integer SBR 150 Subtract Real SGS 151 Build Singleton Set SQI 152 Square Integer SQR 153 Square Real STO 154 Store IXS 155 Index String Array UNI 156 Set Union LDE UB,B 157 Load Extended Word CSP UB 158 Call Standard Procedure (UB=2,3,4,7,8,9,10,11,...) LDCN 159 Load Constant NIL ADJ UB 160 Adjust Set FJP SB 161 False Jump INC B 162 Increment IND B 163 Index IXA B 164 Index Array LAO B 165 Load Global Address LSA UB, 166 Load Constant String Address LAE UB,B 167 Load Extended Address MOV B 168 Move LDO B 169 Load Global SAS UB 170 String Assign SRO B 171 Store Global XJP W1,W2,W3, 172 Case Jump RNP DB 173 Return from Non-Base Procedure CIP UB 174 Call Intermediate Procedure EQU UB 175 Equal (UB=2,4,6,8,10,12) GEQ UB 176 Greater Equal (UB=2,4,6,8,10,12) GRT UB 177 Greater (UB=2,4,6,8,10,12) LDA DB,B 178 Load Intermediate Address LDC UB, 179 Load Constant LEQ UB 180 Lower Equal (UB=2,4,6,8,10,12) LES UB 181 Lesser Than (UB=2,4,6,8,10,12) LOD DB,B 182 Load Immediate NEQ UB 183 Not Equal (UB=2,4,6,8,10,12) STR DB,B 184 Store Intermediate UJP SB 185 Unconditional Jump LDP 186 Load Packed Field STP 187 Store Packed Field LDM UB 188 Load Multiple STM UB 189 Store Multiple LDB 190 Load Byte STB 191 Store Byte IXP UB1,UB2 192 Index Packed Array RBP DB 193 Return from Base procedure CBP UB 194 Call Base procedure EQUI 195 Equal Integer GEQI 196 Greater Than or Equal Integer GRTI 197 Greater Than Integer LLA B 198 Load Local Address LDCI W 199 Load Constant Integer LEQI 200 Less Than or Equal Integer LESI 201 Less Than Integer LDL B 202 Load Local NEQI 203 Not Equal Integer STL B 204 Short Store Local CXP UB1,UB2 205 Call External Procedure CLP UB 206 Call Local Procedure CGP UB 207 Call Global Procedure LPA UB, 208 Load Packed Array STE UB,B 209 Store extended Word ??? 210 unused ??? EFJ SB 211 Equal False Jump NFJ SB 212 Not Equal False Jump BPT B 213 Break Point XIT 214 Exit Operating System NOP 215 No Operation SLDL1 216 Short Load Local SLDL2 217 Short Load Local SLDL3 218 Short Load Local SLDL4 219 Short Load Local SLDL5 220 Short Load Local SLDL6 221 Short Load Local SLDL7 222 Short Load Local SLDL8 223 Short Load Local SLDL9 224 Short Load Local SLDL10 225 Short Load Local SLDL11 226 Short Load Local SLDL12 227 Short Load Local SLDL13 228 Short Load Local SLDL14 229 Short Load Local SLDL15 230 Short Load Local SLDL16 231 Short Load Local SLDO1 232 Short Load Global SLDO2 233 Short Load Global SLDO3 234 Short Load Global SLDO4 235 Short Load Global SLDO5 236 Short Load Global SLDO6 237 Short Load Global SLDO7 238 Short Load Global SLDO8 239 Short Load Global SLDO9 240 Short Load Global SLDO10 241 Short Load Global SLDO11 242 Short Load Global SLDO12 243 Short Load Global SLDO13 244 Short Load Global SLDO14 245 Short Load Global SLDO15 246 Short Load Global SLDO16 247 Short Load Global SIND0 248 Short Index SIND1 249 Short Index SIND2 250 Short Index SIND3 251 Short Index SIND4 252 Short Index SIND5 253 Short Index SIND6 254 Short Index SIND7 255 Short Index