OpenCores
URL https://opencores.org/ocsvn/mlite/mlite/trunk

Subversion Repositories mlite

[/] [mlite/] [trunk/] [tools/] [opcodes.asm] - Blame information for rev 68

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 15 rhoads
##################################################################
2
# TITLE: Opcode Tester
3
# AUTHOR: Steve Rhoads (rhoadss@yahoo.com)
4
# DATE CREATED: 1/10/02
5
# FILENAME: opcodes.asm
6 43 rhoads
# PROJECT: Plasma CPU core
7 15 rhoads
# COPYRIGHT: Software placed into the public domain by the author.
8
#    Software 'as is' without warranty.  Author liable for nothing.
9
# DESCRIPTION:
10
#    This assembly file tests all of the opcodes supported by the
11 43 rhoads
#    Plasma core.
12 15 rhoads
#    This test assumes that address 0xffff is the UART write register
13
#    Successful tests will print out "A" or "AB" or "ABC" or ....
14
#    Missing letters or letters out of order indicate a failure.
15
##################################################################
16
        .text
17
        .align  2
18
        .globl  entry
19
        .ent    entry
20
entry:
21
   .set noreorder
22
 
23 29 rhoads
   #These four instructions must be the first instructions
24
   #convert.exe will correctly initialize $gp
25
   lui   $gp,0
26
   ori   $gp,$gp,0
27
   #convert.exe will set $4=.sbss_start $5=.bss_end
28
   ori   $4,$0,0
29
   ori   $5,$0,0
30
 
31 23 rhoads
   mtc0  $0,$12             #disable interrupts
32 15 rhoads
   ori   $20,$0,0xffff      #serial port write address
33
   ori   $21,$0,'\n'        # letter
34
   ori   $22,$0,'X'         #'X' letter
35 68 rhoads
   ori   $23,$0,'\r'
36
   ori   $24,$0,0x0f80         #temp memory
37 15 rhoads
 
38
   ######################################
39
   #Arithmetic Instructions
40
   ######################################
41
   ori   $2,$0,'A'
42
   sb    $2,0($20)
43
   ori   $2,$0,'r'
44
   sb    $2,0($20)
45
   ori   $2,$0,'i'
46
   sb    $2,0($20)
47
   ori   $2,$0,'t'
48
   sb    $2,0($20)
49
   ori   $2,$0,'h'
50
   sb    $2,0($20)
51 68 rhoads
   sb    $23,0($20)
52 15 rhoads
   sb    $21,0($20)
53
 
54 23 rhoads
   #a: ADD
55
   ori   $2,$0,'a'
56
   sb    $2,0($20)
57 15 rhoads
   ori   $3,$0,5
58
   ori   $4,$0,60
59
   add   $2,$3,$4
60 23 rhoads
   sb    $2,0($20)    #A
61 68 rhoads
   sb    $23,0($20)
62 15 rhoads
   sb    $21,0($20)
63
 
64 23 rhoads
   #b: ADDI
65
   ori   $2,$0,'b'
66
   sb    $2,0($20)
67 15 rhoads
   ori   $4,$0,60
68
   addi  $2,$4,5
69 23 rhoads
   sb    $2,0($20)    #A
70 68 rhoads
   sb    $23,0($20)
71 15 rhoads
   sb    $21,0($20)
72
 
73 23 rhoads
   #c: ADDIU
74
   ori   $2,$0,'c'
75
   sb    $2,0($20)
76 15 rhoads
   ori   $4,$0,50
77
   addiu $5,$4,15
78 23 rhoads
   sb    $5,0($20)    #A
79 68 rhoads
   sb    $23,0($20)
80 15 rhoads
   sb    $21,0($20)
81
 
82 23 rhoads
   #d: ADDU
83
   ori   $2,$0,'d'
84
   sb    $2,0($20)
85 15 rhoads
   ori   $3,$0,5
86
   ori   $4,$0,60
87
   add   $2,$3,$4
88 23 rhoads
   sb    $2,0($20)    #A
89 68 rhoads
   sb    $23,0($20)
90 15 rhoads
   sb    $21,0($20)
91
 
92 23 rhoads
   #e: DIV
93
   ori   $2,$0,'e'
94
   sb    $2,0($20)
95
   ori   $2,$0,65*117+41
96
   ori   $3,$0,117
97 15 rhoads
   div   $2,$3
98
   nop
99
   mflo  $4
100 23 rhoads
   sb    $4,0($20)    #A
101
   mfhi  $4
102
   addi  $4,$4,66-41
103
   sb    $4,0($20)    #B
104
   li    $2,-67*19
105 15 rhoads
   ori   $3,$0,19
106
   div   $2,$3
107
   nop
108
   mflo  $4
109
   sub   $4,$0,$4
110 23 rhoads
   sb    $4,0($20)    #C
111
   ori   $2,$0,68*23
112 15 rhoads
   li    $3,-23
113
   div   $2,$3
114
   nop
115
   mflo  $4
116
   sub   $4,$0,$4
117 23 rhoads
   sb    $4,0($20)    #D
118
   li    $2,-69*13
119 15 rhoads
   li    $3,-13
120
   div   $2,$3
121
   mflo  $4
122 23 rhoads
   sb    $4,0($20)    #E
123 68 rhoads
   sb    $23,0($20)
124 15 rhoads
   sb    $21,0($20)
125
 
126 23 rhoads
   #f: DIVU
127
   ori   $2,$0,'f'
128
   sb    $2,0($20)
129 15 rhoads
   ori   $2,$0,65*13
130
   ori   $3,$0,13
131 23 rhoads
   divu  $2,$3
132 15 rhoads
   nop
133
   mflo  $4
134 23 rhoads
   sb    $4,0($20)    #A
135 68 rhoads
   sb    $23,0($20)
136 15 rhoads
   sb    $21,0($20)
137
 
138 23 rhoads
   #g: MULT
139
   ori   $2,$0,'g'
140
   sb    $2,0($20)
141 15 rhoads
   ori   $2,$0,5
142
   ori   $3,$0,13
143
   mult  $2,$3
144
   nop
145
   mflo  $4
146 23 rhoads
   sb    $4,0($20)    #A
147 15 rhoads
   li    $2,-5
148
   ori   $3,$0,13
149
   mult  $2,$3
150
   nop
151
   mflo  $4
152
   sub   $4,$0,$4
153
   addi  $4,$4,1
154 23 rhoads
   sb    $4,0($20)    #B
155 15 rhoads
   ori   $2,$0,5
156
   li    $3,-13
157
   mult  $2,$3
158
   nop
159
   mflo  $4
160
   sub   $4,$0,$4
161
   addi  $4,$4,2
162 23 rhoads
   sb    $4,0($20)    #C
163 15 rhoads
   li    $2,-5
164
   li    $3,-13
165
   mult  $2,$3
166
   nop
167
   mflo  $4
168
   addi  $4,$4,3
169 23 rhoads
   sb    $4,0($20)    #D
170 44 rhoads
   lui   $4,0xfe98
171
   ori   $4,$4,0x62e5
172
   lui   $5,0x6
173
   ori   $5,0x8db8
174
   mult  $4,$5
175
   mfhi  $6
176
   addiu $7,$6,2356+1+'E' #E
177
   sb    $7,0($20)
178 68 rhoads
   sb    $23,0($20)
179 15 rhoads
   sb    $21,0($20)
180
 
181 23 rhoads
   #h: MULTU
182
   ori   $2,$0,'h'
183
   sb    $2,0($20)
184 15 rhoads
   ori   $2,$0,5
185
   ori   $3,$0,13
186 23 rhoads
   multu $2,$3
187 15 rhoads
   nop
188
   mflo  $4
189 23 rhoads
   sb    $4,0($20)    #A
190 68 rhoads
   sb    $23,0($20)
191 15 rhoads
   sb    $21,0($20)
192
 
193 23 rhoads
   #i: SLT
194
   ori   $2,$0,'i'
195
   sb    $2,0($20)
196 15 rhoads
   ori   $2,$0,10
197
   ori   $3,$0,12
198
   slt   $4,$2,$3
199
   addi  $5,$4,64
200 23 rhoads
   sb    $5,0($20)    #A
201 15 rhoads
   slt   $4,$3,$2
202
   addi  $5,$4,66
203 23 rhoads
   sb    $5,0($20)    #B
204 15 rhoads
   li    $2,0xfffffff0
205
   slt   $4,$2,$3
206
   addi  $5,$4,66
207 23 rhoads
   sb    $5,0($20)    #C
208 15 rhoads
   slt   $4,$3,$2
209
   addi  $5,$4,68
210 23 rhoads
   sb    $5,0($20)    #D
211 15 rhoads
   li    $3,0xffffffff
212
   slt   $4,$2,$3
213
   addi  $5,$4,68
214 23 rhoads
   sb    $5,0($20)    #E
215 15 rhoads
   slt   $4,$3,$2
216
   addi  $5,$4,70
217 23 rhoads
   sb    $5,0($20)    #F
218 68 rhoads
   sb    $23,0($20)
219 15 rhoads
   sb    $21,0($20)
220
 
221 23 rhoads
   #j: SLTI
222
   ori   $2,$0,'j'
223
   sb    $2,0($20)
224 15 rhoads
   ori   $2,$0,10
225
   slti  $4,$2,12
226
   addi  $5,$4,64
227 23 rhoads
   sb    $5,0($20)    #A
228 15 rhoads
   slti  $4,$2,8
229
   addi  $5,$4,66
230 23 rhoads
   sb    $5,0($20)    #B
231 68 rhoads
   sb    $23,0($20)
232 15 rhoads
   sb    $21,0($20)
233
 
234 23 rhoads
   #k: SLTIU
235
   ori   $2,$0,'k'
236
   sb    $2,0($20)
237 15 rhoads
   ori   $2,$0,10
238
   sltiu $4,$2,12
239
   addi  $5,$4,64
240 23 rhoads
   sb    $5,0($20)    #A
241 15 rhoads
   sltiu $4,$2,8
242
   addi  $5,$4,66
243 23 rhoads
   sb    $5,0($20)    #B
244 68 rhoads
   sb    $23,0($20)
245 15 rhoads
   sb    $21,0($20)
246
 
247 23 rhoads
   #l: SLTU
248
   ori   $2,$0,'l'
249
   sb    $2,0($20)
250 15 rhoads
   ori   $2,$0,10
251
   ori   $3,$0,12
252
   slt   $4,$2,$3
253
   addi  $5,$4,64
254 23 rhoads
   sb    $5,0($20)    #A
255 15 rhoads
   slt   $4,$3,$2
256
   addi  $5,$4,66
257 23 rhoads
   sb    $5,0($20)    #B
258 68 rhoads
   sb    $23,0($20)
259 15 rhoads
   sb    $21,0($20)
260
 
261 23 rhoads
   #m: SUB
262
   ori   $2,$0,'m'
263
   sb    $2,0($20)
264 15 rhoads
   ori   $3,$0,70
265
   ori   $4,$0,5
266
   sub   $2,$3,$4
267 23 rhoads
   sb    $2,0($20)    #A
268 68 rhoads
   sb    $23,0($20)
269 15 rhoads
   sb    $21,0($20)
270
 
271 23 rhoads
   #n: SUBU
272
   ori   $2,$0,'n'
273
   sb    $2,0($20)
274 15 rhoads
   ori   $3,$0,70
275
   ori   $4,$0,5
276
   sub   $2,$3,$4
277 23 rhoads
   sb    $2,0($20)    #A
278 68 rhoads
   sb    $23,0($20)
279 15 rhoads
   sb    $21,0($20)
280
 
281
   ######################################
282
   #Branch and Jump Instructions
283
   ######################################
284
   ori   $2,$0,'B'
285
   sb    $2,0($20)
286
   ori   $2,$0,'r'
287
   sb    $2,0($20)
288
   ori   $2,$0,'a'
289
   sb    $2,0($20)
290
   ori   $2,$0,'n'
291
   sb    $2,0($20)
292
   ori   $2,$0,'c'
293
   sb    $2,0($20)
294
   ori   $2,$0,'h'
295
   sb    $2,0($20)
296 68 rhoads
   sb    $23,0($20)
297 15 rhoads
   sb    $21,0($20)
298
 
299 23 rhoads
   #a: B
300
   ori   $2,$0,'a'
301
   sb    $2,0($20)
302 15 rhoads
   ori   $10,$0,'A'
303
   ori   $11,$0,'B'
304
   b     $B1
305
   sb    $10,0($20)
306
   sb    $22,0($20)
307
$B1:
308
   sb    $11,0($20)
309 68 rhoads
   sb    $23,0($20)
310 15 rhoads
   sb    $21,0($20)
311
 
312 23 rhoads
   #b: BAL
313
   ori   $2,$0,'b'
314
   sb    $2,0($20)
315 15 rhoads
   ori   $10,$0,'A'
316
   ori   $11,$0,'B'
317
   ori   $12,$0,'C'
318
   ori   $13,$0,'D'
319
   ori   $14,$0,'E'
320
   ori   $15,$0,'X'
321
   bal   $BAL1
322
   sb    $10,0($20)
323
   sb    $13,0($20)
324
   b     $BAL2
325
   sb    $14,0($20)
326
   sb    $15,0($20)
327
$BAL1:
328
   sb    $11,0($20)
329
   jr    $31
330
   sb    $12,0($20)
331
   sb    $22,0($20)
332
$BAL2:
333 68 rhoads
   sb    $23,0($20)
334 15 rhoads
   sb    $21,0($20)
335
 
336 23 rhoads
   #c: BEQ
337
   ori   $2,$0,'c'
338
   sb    $2,0($20)
339 15 rhoads
   ori   $10,$0,'A'
340
   ori   $11,$0,'B'
341
   ori   $12,$0,'C'
342
   ori   $13,$0,'D'
343
   ori   $2,$0,100
344
   ori   $3,$0,123
345
   ori   $4,$0,123
346
   beq   $2,$3,$BEQ1
347
   sb    $10,0($20)
348
   sb    $11,0($20)
349
   beq   $3,$4,$BEQ1
350
   sb    $12,0($20)
351
   sb    $22,0($20)
352
$BEQ1:
353
   sb    $13,0($20)
354 68 rhoads
   sb    $23,0($20)
355 15 rhoads
   sb    $21,0($20)
356
 
357 23 rhoads
   #d: BGEZ
358
   ori   $2,$0,'d'
359
   sb    $2,0($20)
360 15 rhoads
   ori   $10,$0,'A'
361
   ori   $11,$0,'B'
362
   ori   $12,$0,'C'
363
   ori   $13,$0,'D'
364
   or    $15,$0,'X'
365
   ori   $2,$0,100
366
   li    $3,0xffff1234
367
   ori   $4,$0,123
368
   bgez  $3,$BGEZ1
369
   sb    $10,0($20)
370
   sb    $11,0($20)
371
   bgez  $2,$BGEZ1
372
   sb    $12,0($20)
373
   sb    $22,0($20)
374
$BGEZ1:
375
   bgez  $0,$BGEZ2
376
   nop
377
   sb    $15,0($20)
378
$BGEZ2:
379
   sb    $13,0($20)
380 68 rhoads
   sb    $23,0($20)
381 15 rhoads
   sb    $21,0($20)
382
 
383 23 rhoads
   #e: BGEZAL
384
   ori   $2,$0,'e'
385
   sb    $2,0($20)
386 15 rhoads
   ori   $10,$0,'A'
387
   ori   $11,$0,'B'
388
   ori   $12,$0,'C'
389
   ori   $13,$0,'D'
390
   ori   $14,$0,'E'
391
   ori   $15,$0,'X'
392
   li    $3,0xffff1234
393
   bgezal $3,$BGEZAL1
394
   nop
395
   sb    $10,0($20)
396
   bgezal $0,$BGEZAL1
397
   nop
398
   sb    $13,0($20)
399
   b     $BGEZAL2
400
   sb    $14,0($20)
401
   sb    $15,0($20)
402
$BGEZAL1:
403
   sb    $11,0($20)
404
   jr    $31
405
   sb    $12,0($20)
406
   sb    $22,0($20)
407
$BGEZAL2:
408 68 rhoads
   sb    $23,0($20)
409 15 rhoads
   sb    $21,0($20)
410
 
411 23 rhoads
   #f: BGTZ
412
   ori   $2,$0,'f'
413
   sb    $2,0($20)
414 15 rhoads
   ori   $10,$0,'A'
415
   ori   $11,$0,'B'
416
   ori   $12,$0,'C'
417
   ori   $13,$0,'D'
418
   ori   $2,$0,100
419
   li    $3,0xffff1234
420
   bgtz  $3,$BGTZ1
421
   sb    $10,0($20)
422
   sb    $11,0($20)
423
   bgtz  $2,$BGTZ1
424
   sb    $12,0($20)
425
   sb    $22,0($20)
426
$BGTZ1:
427
   sb    $13,0($20)
428 68 rhoads
   sb    $23,0($20)
429 15 rhoads
   sb    $21,0($20)
430
 
431 23 rhoads
   #g: BLEZ
432
   ori   $2,$0,'g'
433
   sb    $2,0($20)
434 15 rhoads
   ori   $10,$0,'A'
435
   ori   $11,$0,'B'
436
   ori   $12,$0,'C'
437
   ori   $13,$0,'D'
438
   ori   $2,$0,100
439
   li    $3,0xffff1234
440
   blez  $2,$BLEZ1
441
   sb    $10,0($20)
442
   sb    $11,0($20)
443
   blez  $3,$BLEZ1
444
   sb    $12,0($20)
445
   sb    $22,0($20)
446
$BLEZ1:
447
   blez  $0,$BLEZ2
448
   nop
449
   sb    $22,0($20)
450
$BLEZ2:
451
   sb    $13,0($20)
452 68 rhoads
   sb    $23,0($20)
453 15 rhoads
   sb    $21,0($20)
454
 
455 23 rhoads
   #h: BLTZ
456
   ori   $2,$0,'h'
457
   sb    $2,0($20)
458 15 rhoads
   ori   $10,$0,'A'
459
   ori   $11,$0,'B'
460
   ori   $12,$0,'C'
461
   ori   $13,$0,'D'
462
   ori   $14,$0,'E'
463
   ori   $2,$0,100
464
   li    $3,0xffff1234
465
   ori   $4,$0,0
466
   bltz  $2,$BLTZ1
467
   sb    $10,0($20)
468
   sb    $11,0($20)
469
   bltz  $3,$BLTZ1
470
   sb    $12,0($20)
471
   sb    $22,0($20)
472
$BLTZ1:
473
   bltz  $4,$BLTZ2
474
   nop
475
   sb    $13,0($20)
476
$BLTZ2:
477
   sb    $14,0($20)
478 68 rhoads
   sb    $23,0($20)
479 15 rhoads
   sb    $21,0($20)
480
 
481 23 rhoads
   #i: BLTZAL
482
   ori   $2,$0,'i'
483
   sb    $2,0($20)
484 15 rhoads
   ori   $10,$0,'A'
485
   ori   $11,$0,'B'
486
   ori   $12,$0,'C'
487
   ori   $13,$0,'D'
488
   ori   $14,$0,'E'
489
   ori   $15,$0,'X'
490
   li    $3,0xffff1234
491
   bltzal $0,$BLTZAL1
492
   nop
493
   sb    $10,0($20)
494
   bltzal $3,$BLTZAL1
495
   nop
496
   sb    $13,0($20)
497
   b     $BLTZAL2
498
   sb    $14,0($20)
499
   sb    $15,0($20)
500
$BLTZAL1:
501
   sb    $11,0($20)
502
   jr    $31
503
   sb    $12,0($20)
504
   sb    $22,0($20)
505
$BLTZAL2:
506 68 rhoads
   sb    $23,0($20)
507 15 rhoads
   sb    $21,0($20)
508
 
509 23 rhoads
   #j: BNE
510
   ori   $2,$0,'j'
511
   sb    $2,0($20)
512 15 rhoads
   ori   $10,$0,'A'
513
   ori   $11,$0,'B'
514
   ori   $12,$0,'C'
515
   ori   $13,$0,'D'
516
   ori   $2,$0,100
517
   ori   $3,$0,123
518
   ori   $4,$0,123
519
   bne   $3,$4,$BNE1
520
   sb    $10,0($20)
521
   sb    $11,0($20)
522
   bne   $2,$3,$BNE1
523
   sb    $12,0($20)
524
   sb    $22,0($20)
525
$BNE1:
526
   sb    $13,0($20)
527 68 rhoads
   sb    $23,0($20)
528 15 rhoads
   sb    $21,0($20)
529
 
530 23 rhoads
   #k: J
531
   ori   $2,$0,'k'
532
   sb    $2,0($20)
533 15 rhoads
   ori   $10,$0,'A'
534
   ori   $11,$0,'B'
535
   ori   $15,$0,'X'
536
   j     $J1
537
   sb    $10,0($20)
538
   sb    $15,0($20)
539
$J1:
540
   sb    $11,0($20)
541 68 rhoads
   sb    $23,0($20)
542 15 rhoads
   sb    $21,0($20)
543
 
544 23 rhoads
   #l: JAL
545
   ori   $2,$0,'l'
546
   sb    $2,0($20)
547 15 rhoads
   ori   $10,$0,'A'
548
   ori   $11,$0,'B'
549
   ori   $12,$0,'C'
550
   ori   $13,$0,'D'
551
   ori   $14,$0,'E'
552
   ori   $15,$0,'X'
553
   jal   $JAL1
554
   sb    $10,0($20)
555
   sb    $13,0($20)
556
   b     $JAL2
557
   sb    $14,0($20)
558
   sb    $15,0($20)
559
$JAL1:
560
   sb    $11,0($20)
561
   jr    $31
562
   sb    $12,0($20)
563
   sb    $22,0($20)
564
$JAL2:
565 68 rhoads
   sb    $23,0($20)
566 15 rhoads
   sb    $21,0($20)
567
 
568 23 rhoads
   #m: JALR
569
   ori   $2,$0,'m'
570
   sb    $2,0($20)
571 15 rhoads
   ori   $10,$0,'A'
572
   ori   $11,$0,'B'
573
   ori   $12,$0,'C'
574
   ori   $13,$0,'D'
575
   ori   $14,$0,'E'
576
   ori   $15,$0,'X'
577
   la    $3,$JALR1
578
   jalr  $3
579
   sb    $10,0($20)
580
   sb    $13,0($20)
581
   b     $JALR2
582
   sb    $14,0($20)
583
   sb    $15,0($20)
584
$JALR1:
585
   sb    $11,0($20)
586
   jr    $31
587
   sb    $12,0($20)
588
   sb    $22,0($20)
589
$JALR2:
590 68 rhoads
   sb    $23,0($20)
591 15 rhoads
   sb    $21,0($20)
592
 
593 23 rhoads
   #n: JR
594
   ori   $2,$0,'n'
595
   sb    $2,0($20)
596 15 rhoads
   ori   $10,$0,'A'
597
   ori   $11,$0,'B'
598
   ori   $15,$0,'X'
599
   la    $3,$JR1
600
   jr    $3
601
   sb    $10,0($20)
602
   sb    $15,0($20)
603
$JR1:
604
   sb    $11,0($20)
605 68 rhoads
   sb    $23,0($20)
606 15 rhoads
   sb    $21,0($20)
607
 
608 23 rhoads
   #o: NOP
609
   ori   $2,$0,'o'
610
   sb    $2,0($20)
611 15 rhoads
   ori   $2,$0,65
612
   nop
613
   sb    $2,0($20)
614 68 rhoads
   sb    $23,0($20)
615 15 rhoads
   sb    $21,0($20)
616
 
617
 
618
   ######################################
619
   #Load, Store, and Memory Control Instructions
620
   ######################################
621
   ori   $2,$0,'L'
622
   sb    $2,0($20)
623
   ori   $2,$0,'o'
624
   sb    $2,0($20)
625
   ori   $2,$0,'a'
626
   sb    $2,0($20)
627
   ori   $2,$0,'d'
628
   sb    $2,0($20)
629 68 rhoads
   sb    $23,0($20)
630 15 rhoads
   sb    $21,0($20)
631
 
632 23 rhoads
   #a: LB
633
   ori   $2,$0,'a'
634
   sb    $2,0($20)
635 68 rhoads
   or    $2,$0,$24
636 15 rhoads
   li    $3,0x41424344
637
   sw    $3,16($2)
638
   lb    $4,16($2)
639
   sb    $4,0($20)
640
   lb    $4,17($2)
641
   sb    $4,0($20)
642
   lb    $4,18($2)
643
   sb    $4,0($20)
644
   lb    $2,19($2)
645
   sb    $2,0($20)
646 68 rhoads
   sb    $23,0($20)
647 15 rhoads
   sb    $21,0($20)
648
 
649 23 rhoads
   #b: LBU
650
   ori   $2,$0,'b'
651
   sb    $2,0($20)
652 68 rhoads
   or    $2,$0,$24
653 15 rhoads
   li    $3,0x41424344
654
   sw    $3,16($2)
655
   lb    $4,16($2)
656
   sb    $4,0($20)
657
   lb    $4,17($2)
658
   sb    $4,0($20)
659
   lb    $4,18($2)
660
   sb    $4,0($20)
661
   lb    $2,19($2)
662
   sb    $2,0($20)
663 68 rhoads
   sb    $23,0($20)
664 15 rhoads
   sb    $21,0($20)
665
 
666 23 rhoads
   #c: LH
667
   ori   $2,$0,'c'
668
   sb    $2,0($20)
669 68 rhoads
   or    $2,$0,$24
670 15 rhoads
   li    $3,0x00410042
671
   sw    $3,16($2)
672
   lh    $4,16($2)
673
   sb    $4,0($20)
674
   lh    $2,18($2)
675
   sb    $2,0($20)
676 68 rhoads
   sb    $23,0($20)
677 15 rhoads
   sb    $21,0($20)
678
 
679 23 rhoads
   #d: LHU
680
   ori   $2,$0,'d'
681
   sb    $2,0($20)
682 68 rhoads
   or    $2,$0,$24
683 15 rhoads
   li    $3,0x00410042
684
   sw    $3,16($2)
685
   lh    $4,16($2)
686
   sb    $4,0($20)
687
   lh    $2,18($2)
688
   sb    $2,0($20)
689 68 rhoads
   sb    $23,0($20)
690 15 rhoads
   sb    $21,0($20)
691
 
692 23 rhoads
   #e: LW
693
   ori   $2,$0,'e'
694
   sb    $2,0($20)
695 68 rhoads
   or    $2,$0,$24
696 15 rhoads
   li    $3,'A'
697
   sw    $3,16($2)
698
   ori   $3,$0,0
699
   lw    $2,16($2)
700
   sb    $2,0($20)
701 68 rhoads
   sb    $23,0($20)
702 15 rhoads
   sb    $21,0($20)
703
 
704 23 rhoads
   #f: LWL & LWR
705
   ori   $2,$0,'f'
706
   sb    $2,0($20)
707 68 rhoads
   or    $2,$0,$24
708 15 rhoads
   li    $3,'A'
709
   sw    $3,16($2)
710
   ori   $3,$0,0
711
   lwl   $2,16($2)
712
   lwr   $2,16($2)
713
   sb    $2,0($20)
714 68 rhoads
   sb    $23,0($20)
715 15 rhoads
   sb    $21,0($20)
716
 
717 23 rhoads
   #g: SB
718
   ori   $2,$0,'g'
719
   sb    $2,0($20)
720 15 rhoads
   ori   $2,$0,'A'
721
   sb    $2,0($20)
722 68 rhoads
   sb    $23,0($20)
723 15 rhoads
   sb    $21,0($20)
724
 
725 23 rhoads
   #h: SH
726
   ori   $2,$0,'h'
727
   sb    $2,0($20)
728 68 rhoads
   or    $4,$0,$24
729 15 rhoads
   ori   $2,$0,0x4142
730 29 rhoads
   sh    $2,16($4)
731
   lb    $3,16($4)
732 15 rhoads
   sb    $3,0($20)
733 29 rhoads
   lb    $2,17($4)
734 15 rhoads
   sb    $2,0($20)
735 68 rhoads
   sb    $23,0($20)
736 15 rhoads
   sb    $21,0($20)
737
 
738 23 rhoads
   #i: SW
739
   ori   $2,$0,'i'
740
   sb    $2,0($20)
741 68 rhoads
   or    $2,$0,$24
742 15 rhoads
   li    $3,0x41424344
743
   sw    $3,16($2)
744
   lb    $4,16($2)
745
   sb    $4,0($20)
746
   lb    $4,17($2)
747
   sb    $4,0($20)
748
   lb    $4,18($2)
749
   sb    $4,0($20)
750
   lb    $2,19($2)
751
   sb    $2,0($20)
752 68 rhoads
   sb    $23,0($20)
753 15 rhoads
   sb    $21,0($20)
754
 
755 23 rhoads
   #j: SWL & SWR
756
   ori   $2,$0,'j'
757
   sb    $2,0($20)
758 68 rhoads
   or    $2,$0,$24
759 15 rhoads
   li    $3,0x41424344
760
   swl   $3,16($2)
761
   swr   $3,16($2)
762
   lb    $4,16($2)
763
   sb    $4,0($20)
764
   lb    $4,17($2)
765
   sb    $4,0($20)
766
   lb    $4,18($2)
767
   sb    $4,0($20)
768
   lb    $2,19($2)
769
   sb    $2,0($20)
770 68 rhoads
   sb    $23,0($20)
771 15 rhoads
   sb    $21,0($20)
772
 
773
 
774
   ######################################
775
   #Logical Instructions
776
   ######################################
777
   ori   $2,$0,'L'
778
   sb    $2,0($20)
779
   ori   $2,$0,'o'
780
   sb    $2,0($20)
781
   ori   $2,$0,'g'
782
   sb    $2,0($20)
783
   ori   $2,$0,'i'
784
   sb    $2,0($20)
785
   ori   $2,$0,'c'
786
   sb    $2,0($20)
787 68 rhoads
   sb    $23,0($20)
788 15 rhoads
   sb    $21,0($20)
789
 
790 23 rhoads
   #a: AND
791
   ori   $2,$0,'a'
792
   sb    $2,0($20)
793 15 rhoads
   ori   $2,$0,0x0741
794
   ori   $3,$0,0x60f3
795
   and   $4,$2,$3
796
   sb    $4,0($20)
797 68 rhoads
   sb    $23,0($20)
798 15 rhoads
   sb    $21,0($20)
799
 
800 23 rhoads
   #b: ANDI
801
   ori   $2,$0,'b'
802
   sb    $2,0($20)
803 15 rhoads
   ori   $2,$0,0x0741
804
   andi  $4,$2,0x60f3
805
   sb    $4,0($20)
806 68 rhoads
   sb    $23,0($20)
807 15 rhoads
   sb    $21,0($20)
808
 
809 23 rhoads
   #c: LUI
810
   ori   $2,$0,'c'
811
   sb    $2,0($20)
812 15 rhoads
   lui   $2,0x41
813
   srl   $3,$2,16
814
   sb    $3,0($20)
815 68 rhoads
   sb    $23,0($20)
816 15 rhoads
   sb    $21,0($20)
817
 
818 23 rhoads
   #d: NOR
819
   ori   $2,$0,'d'
820
   sb    $2,0($20)
821 15 rhoads
   li    $2,0xf0fff08e
822
   li    $3,0x0f0f0f30
823
   nor   $4,$2,$3
824
   sb    $4,0($20)
825 68 rhoads
   sb    $23,0($20)
826 15 rhoads
   sb    $21,0($20)
827
 
828 23 rhoads
   #e: OR
829
   ori   $2,$0,'e'
830
   sb    $2,0($20)
831 15 rhoads
   ori   $2,$0,0x40
832
   ori   $3,$0,0x01
833
   or    $4,$2,$3
834
   sb    $4,0($20)
835 68 rhoads
   sb    $23,0($20)
836 15 rhoads
   sb    $21,0($20)
837
 
838 23 rhoads
   #f: ORI
839
   ori   $2,$0,'f'
840
   sb    $2,0($20)
841 15 rhoads
   ori   $2,$0,0x40
842
   ori   $4,$2,0x01
843
   sb    $4,0($20)
844 68 rhoads
   sb    $23,0($20)
845 15 rhoads
   sb    $21,0($20)
846
 
847 23 rhoads
   #g: XOR
848
   ori   $2,$0,'g'
849
   sb    $2,0($20)
850 15 rhoads
   ori   $2,$0,0xf043
851
   ori   $3,$0,0xf002
852
   xor   $4,$2,$3
853
   sb    $4,0($20)
854 68 rhoads
   sb    $23,0($20)
855 15 rhoads
   sb    $21,0($20)
856
 
857 23 rhoads
   #h: XORI
858
   ori   $2,$0,'h'
859
   sb    $2,0($20)
860 15 rhoads
   ori   $2,$0,0xf043
861
   xor   $4,$2,0xf002
862
   sb    $4,0($20)
863 68 rhoads
   sb    $23,0($20)
864 15 rhoads
   sb    $21,0($20)
865
 
866
 
867
   ######################################
868
   #Move Instructions
869
   ######################################
870
   ori   $2,$0,'M'
871
   sb    $2,0($20)
872
   ori   $2,$0,'o'
873
   sb    $2,0($20)
874
   ori   $2,$0,'v'
875
   sb    $2,0($20)
876
   ori   $2,$0,'e'
877
   sb    $2,0($20)
878 68 rhoads
   sb    $23,0($20)
879 15 rhoads
   sb    $21,0($20)
880
 
881 23 rhoads
   #a: MFHI
882
   ori   $2,$0,'a'
883
   sb    $2,0($20)
884 15 rhoads
   ori   $2,$0,65
885
   mthi  $2
886
   mfhi  $3
887
   sb    $3,0($20)
888 68 rhoads
   sb    $23,0($20)
889 15 rhoads
   sb    $21,0($20)
890
 
891 23 rhoads
   #b: MFLO
892
   ori   $2,$0,'b'
893
   sb    $2,0($20)
894 15 rhoads
   ori   $2,$0,65
895
   mtlo  $2
896
   mflo  $3
897
   sb    $3,0($20)
898 68 rhoads
   sb    $23,0($20)
899 15 rhoads
   sb    $21,0($20)
900
 
901 23 rhoads
   #c: MTHI
902
   ori   $2,$0,'c'
903
   sb    $2,0($20)
904 15 rhoads
   ori   $2,$0,65
905
   mthi  $2
906
   mfhi  $3
907
   sb    $3,0($20)
908 68 rhoads
   sb    $23,0($20)
909 15 rhoads
   sb    $21,0($20)
910
 
911 23 rhoads
   #d: MTLO
912
   ori   $2,$0,'d'
913
   sb    $2,0($20)
914 15 rhoads
   ori   $2,$0,65
915
   mtlo  $2
916
   mflo  $3
917
   sb    $3,0($20)
918 68 rhoads
   sb    $23,0($20)
919 15 rhoads
   sb    $21,0($20)
920
 
921
 
922
   ######################################
923
   #Shift Instructions
924
   ######################################
925
   ori   $2,$0,'S'
926
   sb    $2,0($20)
927
   ori   $2,$0,'h'
928
   sb    $2,0($20)
929
   ori   $2,$0,'i'
930
   sb    $2,0($20)
931
   ori   $2,$0,'f'
932
   sb    $2,0($20)
933
   ori   $2,$0,'t'
934
   sb    $2,0($20)
935 68 rhoads
   sb    $23,0($20)
936 15 rhoads
   sb    $21,0($20)
937
 
938 23 rhoads
   #a: SLL
939
   ori   $2,$0,'a'
940
   sb    $2,0($20)
941 15 rhoads
   li    $2,0x40414243
942
   sll   $3,$2,8
943
   srl   $3,$3,24
944
   sb    $3,0($20)
945 68 rhoads
   sb    $23,0($20)
946 15 rhoads
   sb    $21,0($20)
947
 
948 23 rhoads
   #b: SLLV
949
   ori   $2,$0,'b'
950
   sb    $2,0($20)
951 15 rhoads
   li    $2,0x40414243
952
   ori   $3,$0,8
953
   sllv  $3,$2,$3
954
   srl   $3,$3,24
955
   sb    $3,0($20)
956 68 rhoads
   sb    $23,0($20)
957 15 rhoads
   sb    $21,0($20)
958
 
959 23 rhoads
   #c: SRA
960
   ori   $2,$0,'c'
961
   sb    $2,0($20)
962 15 rhoads
   li    $2,0x40414243
963
   sra   $3,$2,16
964
   sb    $3,0($20)
965
   li    $2,0x84000000
966
   sra   $3,$2,25
967
   sub   $3,$3,0x80
968
   sb    $3,0($20)
969 68 rhoads
   sb    $23,0($20)
970 15 rhoads
   sb    $21,0($20)
971
 
972 23 rhoads
   #d: SRAV
973
   ori   $2,$0,'d'
974
   sb    $2,0($20)
975 15 rhoads
   li    $2,0x40414243
976
   ori   $3,$0,16
977
   srav  $3,$2,$3
978
   sb    $3,0($20)
979
   ori   $3,$0,25
980
   li    $2,0x84000000
981 29 rhoads
   srav  $3,$2,$3
982 15 rhoads
   sub   $3,$3,0x80
983
   sb    $3,0($20)
984 68 rhoads
   sb    $23,0($20)
985 15 rhoads
   sb    $21,0($20)
986
 
987 23 rhoads
   #e: SRL
988
   ori   $2,$0,'e'
989
   sb    $2,0($20)
990 15 rhoads
   li    $2,0x40414243
991
   srl   $3,$2,16
992
   sb    $3,0($20)
993
   li    $2,0x84000000
994 29 rhoads
   srl   $3,$2,25
995 15 rhoads
   sb    $3,0($20)
996 68 rhoads
   sb    $23,0($20)
997 15 rhoads
   sb    $21,0($20)
998
 
999 23 rhoads
   #f: SRLV
1000
   ori   $2,$0,'f'
1001
   sb    $2,0($20)
1002 15 rhoads
   li    $2,0x40414243
1003
   ori   $3,$0,16
1004
   srlv  $4,$2,$3
1005
   sb    $4,0($20)
1006
   ori   $3,$0,25
1007
   li    $2,0x84000000
1008 29 rhoads
   srlv  $3,$2,$3
1009 15 rhoads
   sb    $3,0($20)
1010 68 rhoads
   sb    $23,0($20)
1011 15 rhoads
   sb    $21,0($20)
1012
 
1013
 
1014
   ori   $2,$0,'D'
1015
   sb    $2,0($20)
1016
   ori   $2,$0,'o'
1017
   sb    $2,0($20)
1018
   ori   $2,$0,'n'
1019
   sb    $2,0($20)
1020
   ori   $2,$0,'e'
1021
   sb    $2,0($20)
1022 68 rhoads
   sb    $23,0($20)
1023 15 rhoads
   sb    $21,0($20)
1024
 
1025
 
1026
$DONE:
1027
   j     $DONE
1028
   nop
1029
 
1030
   .set reorder
1031
        .end    entry
1032
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.