@@ -232,65 +232,83 @@ static void test_indexed() {
232
232
ERRT (" BRA 128,P3" , OVERFLOW_RANGE, " 128,P3" , 0x77 , 0x80 );
233
233
234
234
ATEST (0x1000 , " LD EA,0x1000,PC" , 0x80 , 0xFF );
235
+ ATEST (0x1000 , " LD EA,0x1000" , 0x80 , 0xFF );
235
236
ATEST (0x1000 , " LD EA,0x0F81,PC" , 0x80 , 0x80 );
237
+ ATEST (0x1000 , " LD EA,0x0F81" , 0x80 , 0x80 );
236
238
ATEST (0x1000 , " LD EA,0x1080,PC" , 0x80 , 0x7F );
239
+ ATEST (0x1000 , " LD EA,0x1080" , 0x80 , 0x7F );
237
240
AERRT (0x1000 , " LD EA,0x0F80,PC" , OPERAND_TOO_FAR, " 0x0F80,PC" , 0x80 , 0x7F );
241
+ AERRT (0x1000 , " LD EA,0x0F80" , OPERAND_TOO_FAR, " 0x0F80" , 0x80 , 0x7F );
238
242
AERRT (0x1000 , " LD EA,0x1081,PC" , OPERAND_TOO_FAR, " 0x1081,PC" , 0x80 , 0x80 );
243
+ AERRT (0x1000 , " LD EA,0x1081" , OPERAND_TOO_FAR, " 0x1081" , 0x80 , 0x80 );
239
244
TEST ( " LD EA,0,SP" , 0x81 , 0x00 );
240
245
TEST ( " LD EA,-128,P2" , 0x82 , 0x80 );
241
246
TEST ( " LD EA,127,P3" , 0x83 , 0x7F );
242
247
ERRT ( " LD EA,-129,P2" , OVERFLOW_RANGE, " -129,P2" , 0x82 , 0x7F );
243
248
ERRT ( " LD EA,128,P3" , OVERFLOW_RANGE, " 128,P3" , 0x83 , 0x80 );
244
249
ATEST (0x1100 , " ST EA,0x1081,PC" , 0x88 , 0x80 );
250
+ ATEST (0x1100 , " ST EA,0x1081" , 0x88 , 0x80 );
245
251
TEST ( " ST EA,0,SP" , 0x89 , 0x00 );
246
252
TEST ( " ST EA,-128,P2" , 0x8A , 0x80 );
247
253
TEST ( " ST EA,127,P3" , 0x8B , 0x7F );
248
254
ATEST (0x1000 , " LD T,0x1080,PC" , 0xA0 , 0x7F );
255
+ ATEST (0x1000 , " LD T,0x1080" , 0xA0 , 0x7F );
249
256
TEST ( " LD T,0,SP" , 0xA1 , 0x00 );
250
257
TEST ( " LD T,-128,P2" , 0xA2 , 0x80 );
251
258
TEST ( " LD T,127,P3" , 0xA3 , 0x7F );
252
259
ATEST (0x1000 , " ADD EA,0x1005,PC" , 0xB0 , 0x04 );
260
+ ATEST (0x1000 , " ADD EA,0x1005" , 0xB0 , 0x04 );
253
261
TEST ( " ADD EA,0,SP" , 0xB1 , 0x00 );
254
262
TEST ( " ADD EA,-128,P2" , 0xB2 , 0x80 );
255
263
TEST ( " ADD EA,127,P3" , 0xB3 , 0x7F );
256
264
ATEST (0x1000 , " SUB EA,0x1000,PC" , 0xB8 , 0xFF );
265
+ ATEST (0x1000 , " SUB EA,0x1000" , 0xB8 , 0xFF );
257
266
TEST ( " SUB EA,0,SP" , 0xB9 , 0x00 );
258
267
TEST ( " SUB EA,-128,P2" , 0xBA , 0x80 );
259
268
TEST ( " SUB EA,127,P3" , 0xBB , 0x7F );
260
269
261
270
ATEST (0x1000 , " ILD A,0x1000,PC" , 0x90 , 0xFF );
271
+ ATEST (0x1000 , " ILD A,0x1000" , 0x90 , 0xFF );
262
272
TEST ( " ILD A,0,SP" , 0x91 , 0x00 );
263
273
TEST ( " ILD A,-128,P2" , 0x92 , 0x80 );
264
274
TEST ( " ILD A,127,P3" , 0x93 , 0x7F );
265
275
ATEST (0x1000 , " DLD A,0x1000,PC" , 0x98 , 0xFF );
276
+ ATEST (0x1000 , " DLD A,0x1000" , 0x98 , 0xFF );
266
277
TEST ( " DLD A,0,SP" , 0x99 , 0x00 );
267
278
TEST ( " DLD A,-128,P2" , 0x9A , 0x80 );
268
279
TEST ( " DLD A,127,P3" , 0x9B , 0x7F );
269
280
ATEST (0x1000 , " LD A,0x1000,PC" , 0xC0 , 0xFF );
281
+ ATEST (0x1000 , " LD A,0x1000" , 0xC0 , 0xFF );
270
282
TEST ( " LD A,0,SP" , 0xC1 , 0x00 );
271
283
TEST ( " LD A,-128,P2" , 0xC2 , 0x80 );
272
284
TEST ( " LD A,127,P3" , 0xC3 , 0x7F );
273
285
ATEST (0x1000 , " ST A,0x1000,PC" , 0xC8 , 0xFF );
286
+ ATEST (0x1000 , " ST A,0x1000" , 0xC8 , 0xFF );
274
287
TEST ( " ST A,0,SP" , 0xC9 , 0x00 );
275
288
TEST ( " ST A,-128,P2" , 0xCA , 0x80 );
276
289
TEST ( " ST A,127,P3" , 0xCB , 0x7F );
277
290
ATEST (0x1000 , " AND A,0x1000,PC" , 0xD0 , 0xFF );
291
+ ATEST (0x1000 , " AND A,0x1000" , 0xD0 , 0xFF );
278
292
TEST ( " AND A,0,SP" , 0xD1 , 0x00 );
279
293
TEST ( " AND A,-128,P2" , 0xD2 , 0x80 );
280
294
TEST ( " AND A,127,P3" , 0xD3 , 0x7F );
281
295
ATEST (0x1000 , " OR A,0x1000,PC" , 0xD8 , 0xFF );
296
+ ATEST (0x1000 , " OR A,0x1000" , 0xD8 , 0xFF );
282
297
TEST ( " OR A,0,SP" , 0xD9 , 0x00 );
283
298
TEST ( " OR A,-128,P2" , 0xDA , 0x80 );
284
299
TEST ( " OR A,127,P3" , 0xDB , 0x7F );
285
300
ATEST (0x1000 , " XOR A,0x1000,PC" , 0xE0 , 0xFF );
301
+ ATEST (0x1000 , " XOR A,0x1000" , 0xE0 , 0xFF );
286
302
TEST ( " XOR A,0,SP" , 0xE1 , 0x00 );
287
303
TEST ( " XOR A,-128,P2" , 0xE2 , 0x80 );
288
304
TEST ( " XOR A,127,P3" , 0xE3 , 0x7F );
289
305
ATEST (0x1000 , " ADD A,0x1000,PC" , 0xF0 , 0xFF );
306
+ ATEST (0x1000 , " ADD A,0x1000" , 0xF0 , 0xFF );
290
307
TEST ( " ADD A,0,SP" , 0xF1 , 0x00 );
291
308
TEST ( " ADD A,-128,P2" , 0xF2 , 0x80 );
292
309
TEST ( " ADD A,127,P3" , 0xF3 , 0x7F );
293
310
ATEST (0x1000 , " SUB A,0x1000,PC" , 0xF8 , 0xFF );
311
+ ATEST (0x1000 , " SUB A,0x1000" , 0xF8 , 0xFF );
294
312
TEST ( " SUB A,0,SP" , 0xF9 , 0x00 );
295
313
TEST ( " SUB A,-128,P2" , 0xFA , 0x80 );
296
314
TEST ( " SUB A,127,P3" , 0xFB , 0x7F );
@@ -305,9 +323,13 @@ static void test_indexed() {
305
323
TEST ( " BZ neg128,P3" , 0x6F , 0x80 );
306
324
TEST ( " BRA pos127,P2" , 0x76 , 0x7F );
307
325
ATEST (0x1000 , " LD EA,sym1000,PC" , 0x80 , 0xFF );
326
+ ATEST (0x1000 , " LD EA,sym1000" , 0x80 , 0xFF );
308
327
ATEST (0x1100 , " ST EA,sym1081,PC" , 0x88 , 0x80 );
328
+ ATEST (0x1100 , " ST EA,sym1081" , 0x88 , 0x80 );
309
329
ATEST (0x1000 , " LD T,sym1080,PC" , 0xA0 , 0x7F );
330
+ ATEST (0x1000 , " LD T,sym1080" , 0xA0 , 0x7F );
310
331
ATEST (0x1000 , " ADD EA,sym1005,PC" , 0xB0 , 0x04 );
332
+ ATEST (0x1000 , " ADD EA,sym1005" , 0xB0 , 0x04 );
311
333
TEST ( " SUB A,neg128,SP" , 0xF9 , 0x80 );
312
334
TEST ( " SUB A,pos127,P2" , 0xFA , 0x7F );
313
335
}
@@ -345,6 +367,25 @@ static void test_auto_indexed() {
345
367
TEST (" SUB A,@-128,P2" , 0xFE , 0x80 );
346
368
TEST (" SUB A,@127,P3" , 0xFF , 0x7F );
347
369
370
+ TEST (" ILD A,-128,@P2" , 0x96 , 0x80 );
371
+ TEST (" ILD A,127,@P3" , 0x97 , 0x7F );
372
+ TEST (" DLD A,-128,@P2" , 0x9E , 0x80 );
373
+ TEST (" DLD A,127,@P3" , 0x9F , 0x7F );
374
+ TEST (" LD A,-128,@P2" , 0xC6 , 0x80 );
375
+ TEST (" LD A,127,@P3" , 0xC7 , 0x7F );
376
+ TEST (" ST A,-128,@P2" , 0xCE , 0x80 );
377
+ TEST (" ST A,127,@P3" , 0xCF , 0x7F );
378
+ TEST (" AND A,-128,@P2" , 0xD6 , 0x80 );
379
+ TEST (" AND A,127,@P3" , 0xD7 , 0x7F );
380
+ TEST (" OR A,-128,@P2" , 0xDE , 0x80 );
381
+ TEST (" OR A,127,@P3" , 0xDF , 0x7F );
382
+ TEST (" XOR A,-128,@P2" , 0xE6 , 0x80 );
383
+ TEST (" XOR A,127,@P3" , 0xE7 , 0x7F );
384
+ TEST (" ADD A,-128,@P2" , 0xF6 , 0x80 );
385
+ TEST (" ADD A,127,@P3" , 0xF7 , 0x7F );
386
+ TEST (" SUB A,-128,@P2" , 0xFE , 0x80 );
387
+ TEST (" SUB A,127,@P3" , 0xFF , 0x7F );
388
+
348
389
symtab.intern (-128 , " neg128" );
349
390
symtab.intern (+127 , " pos127" );
350
391
symtab.intern (-1 , " neg1" );
@@ -399,6 +440,7 @@ static void test_undef() {
399
440
ERUS (" BP UNDEF,P2" , " UNDEF,P2" , 0x66 , 0x00 );
400
441
AERUS (0x1100 , " BZ UNDEF" , " UNDEF" , 0x6C , 0x00 );
401
442
AERUS (0x1000 , " LD EA,UNDEF,PC" , " UNDEF,PC" , 0x80 , 0x00 );
443
+ AERUS (0x1000 , " LD EA,UNDEF" , " UNDEF" , 0x85 , 0x00 );
402
444
AERUS (0x1000 , " JSR UNDEF" , " UNDEF" , 0x20 , 0x00 , 0x00 );
403
445
AERUS (0x1000 , " JMP UNDEF" , " UNDEF" , 0x24 , 0x00 , 0x00 );
404
446
}
0 commit comments