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

Subversion Repositories Aquarius

[/] [Aquarius/] [trunk/] [verification/] [sha_testsource/] [testexception.src] - Blame information for rev 12

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 thorn_aitc
/*
2
===================
3
test source program
4
testexception.src
5
 
6
Apr.03 2003
7
===================
8
 
9
address           size wait width device
10
00000000-00001FFF  8K  0    32    ROM
11
00010000-00011FFF  8K  3    32    ROM
12
00020000-00021FFF  8K  0    16    ROM
13
00030000-00031FFF  8K  3    16    ROM
14
ABCD0000-ABCD0003   4  3    32    PIO
15
ABCD0100-ABCD0103   4  3    32    UART
16
ABCD0200-ABCD0207   8  3    32    SYS
17
FFFCE000-FFFCFFFF  8K  0    32    RAM
18
FFFDE000-FFFDFFFF  8K  3    32    RAM
19
FFFEE000-FFFEFFFF  8K  0    16    RAM
20
FFFFE000-FFFFFFFF  8K  3    16    RAM
21
*/
22
 
23
.equ _rom0, 0x00000000
24
.equ _rom1, 0x00010000
25
.equ _rom2, 0x00020000
26
.equ _rom3, 0x00030000
27
.equ _pio,  0xabcd0000
28
.equ _uart, 0xabcd0100
29
.equ _sys,  0xabcd0200
30
.equ _ram0, 0xfffce000
31
.equ _ram1, 0xfffde000
32
.equ _ram2, 0xfffee000
33
.equ _ram3, 0xffffe000
34
 
35
/************
36
 Vector Table
37
 ************/
38
.org _rom0
39
.long _power_on_reset
40
.long _ram0 + 0x02000
41
.long _manual_reset
42
.long _ram0 + 0x01ff0
43
.long _gnrl_ilgl
44
.long 0
45
.long _slot_ilgl
46
.long 0
47
.long 0
48
.long _cpuerr
49
.long _dmaerr
50
.long _nmi
51
.long 0
52
.org _rom0 + 0x0080
53
.long _trap32
54
.org _rom0 + 0x0090
55
.long _trap36
56
.org _rom0 + 0x00a0
57
.long _trap40
58
.org _rom0 + 0x00b0
59
.long _trap44
60
.org _rom0 + 0x00c0
61
.long _trap48
62
.org _rom0 + 0x00d0
63
.long _trap52
64
.org _rom0 + 0x00e0
65
.long _trap56
66
.org _rom0 + 0x00f0
67
.long _trap60
68
.org _rom0 + 0x0100
69
.long _irq0
70
.long _irq1
71
.long _irq2
72
.long _irq3
73
.long _irq4
74
.long _irq5
75
.long _irq6
76
.long _irq7
77
 
78
.org 0x0400
79
 
80
/**************
81
 Power On Reset
82
 **************/
83
_power_on_reset:
84
 mov    #0, r14
85
_test:
86
 mov.l  _pfail, r13 !fail address
87
 bra    _main_test
88
 nop
89
.align 4
90
_pfail: .long _fail
91
 
92
_main_test:
93
 
94
/*******************
95
 Fetch from 1,3,5...
96
 *******************/
97
 mova   _fetchodd, r0
98
 add    #1, r0
99
 jmp    @r0
100
 mov    #0xcc, r0
101
 
102
_fetchodd:
103
 nop
104
 nop
105
 nop
106
 cmp/eq #0x33, r0
107
 bt     .+6
108
 jmp    @r13
109
 nop
110
 
111
/*********************
112
 Actual NMI from Break
113
 *********************/
114
 mov.l  _psys_2, r3
115
 
116
 mova   _break_adrs, r0 ! Set Break Addess
117
 mov.l  r0, @(4,r3)
118
 
119
 mov.l  _p01000fff, r4  ! NMI Break ON
120
 mov.l  r4, @r3
121
 
122
 mov    #0xaa, r0
123
 
124
 mov    #0, r2
125
 mov    #1, r2
126
 mov    #2, r2
127
 mov    #3, r2
128
_break_adrs:
129
 mov    #4, r2
130
 mov    #5, r2
131
 mov    #6, r2
132
 mov    #7, r2
133
 
134
 cmp/eq #0x55, r0
135
 bt     .+6
136
 jmp    @r13
137
 nop
138
 
139
/*********************
140
 Actual IRQ from Timer
141
 *********************/
142
 mov    #0x00, r0
143
 ldc    r0, sr
144
 
145
 mov    #0x88, r0
146
 mov.l  _psys_2, r3
147
 mov.l  _p02140010, r4 ! IRQ Timer ON
148
 mov.l  r4, @r3
149
 
150
 mov    #0, r2
151
 mov    #1, r2
152
 mov    #2, r2
153
 mov    #3, r2
154
 mov    #4, r2
155
 mov    #5, r2
156
 mov    #6, r2
157
 mov    #7, r2
158
 mov    #8, r2
159
 mov    #9, r2
160
 mov    #10, r2
161
 mov    #11, r2
162
 mov    #12, r2
163
 mov    #13, r2
164
 mov    #14, r2
165
 mov    #15, r2
166
 mov    #16, r2
167
 mov    #17, r2
168
 mov    #18, r2
169
 mov    #19, r2
170
 mov    #20, r2
171
 mov    #21, r2
172
 mov    #22, r2
173
 mov    #23, r2
174
 
175
 mov.l  _p00000fff, r4 ! IRQ Timer OFF
176
 mov.l  r4, @r3
177
 
178
 cmp/eq #0x77, r0
179
 bt     .+6
180
 jmp    @r13
181
 nop
182
 
183
 mov    #0xf0, r0
184
 ldc    r0, sr
185
 bra    _skip_const
186
 nop
187
 
188
/**************
189
 Constant Table
190
 **************/
191
.align 4
192
_psys_2    : .long _sys
193
_p02140010 : .long 0x02140010
194
_p00000fff : .long 0x00000fff
195
_p01000fff : .long 0x01000fff
196
 
197
_skip_const:
198
 
199
/************************
200
 Actual CPU Address Error
201
 ************************/
202
 mov    #1, r1
203
 
204
 mov    #0xcc, r0
205
 mov.w  @r1, r2
206
 nop
207
 nop
208
 nop
209
 nop
210
 cmp/eq #0x33, r0
211
 bt     .+6
212
 jmp    @r13
213
 nop
214
 
215
 mov    #0xcc, r0
216
 mov.l  @r1, r2
217
 nop
218
 nop
219
 nop
220
 nop
221
 cmp/eq #0x33, r0
222
 bt     .+6
223
 jmp    @r13
224
 nop
225
 
226
 mov    #2, r1
227
 
228
 mov    #0xcc, r0
229
 mov.l  @r1, r2
230
 nop
231
 nop
232
 nop
233
 nop
234
 cmp/eq #0x33, r0
235
 bt     .+6
236
 jmp    @r13
237
 nop
238
 
239
 mov    #3, r1
240
 
241
 mov    #0xcc, r0
242
 mov.w  @r1, r2
243
 nop
244
 nop
245
 nop
246
 nop
247
 cmp/eq #0x33, r0
248
 bt     .+6
249
 jmp    @r13
250
 nop
251
 
252
 mov    #0xcc, r0
253
 mov.l  @r1, r2
254
 nop
255
 nop
256
 nop
257
 nop
258
 cmp/eq #0x33, r0
259
 bt     .+6
260
 jmp    @r13
261
 nop
262
 
263
/********************
264
 Emulate Manual Reset
265
 ********************/
266
 mov    #4, r1
267
 mov.l  @r1, r15
268
 mova   _manual_reset_2, r0
269
 mov    r0, r5
270
 mov.l  _psys, r3
271
 mov.l  _p08000fff, r4 ! Manual Reset
272
 mov.l  r4, @r3
273
 bra    .
274
 mov    r15, r1
275
 
276
.align 4
277
_manual_reset:
278
 add    #-16, r1
279
 cmp/eq r1, r15
280
 bt     .+6
281
 jmp    @r13
282
 nop
283
 jmp    @r5
284
 nop
285
 
286
_manual_reset_2:
287
 mov.l _pvector_top_table, r0
288
 mov.l @(r0, r14), r12
289
 ldc   r12, vbr
290
 
291
/*************************
292
 Emulate DMA Address Error
293
 *************************/
294
 mov    #0x00, r0
295
 ldc    r0, sr
296
 mov    #0xbb, r0
297
 
298
 mov.l  _psys, r3
299
 mov.l  _p10000fff, r4 ! DMA Address Error
300
 mov.l  r4, @r3
301
 nop
302
 nop
303
 
304
 stc    sr, r2
305
 
306
 cmp/eq #0x44, r0
307
 bt     .+6
308
 jmp    @r13
309
 nop
310
 
311
 mov    r2, r0
312
 cmp/eq #0x00, r0
313
 bt     .+6
314
 jmp    @r13
315
 nop
316
 
317
/*************************
318
 Emulate CPU Address Error
319
 *************************/
320
 mov    #0x00, r0
321
 ldc    r0, sr
322
 mov    #0xcc, r0
323
 
324
 mov.l  _psys, r3
325
 mov.l  _p20000fff, r4 ! CPU Address Error
326
 mov.l  r4, @r3
327
 nop
328
 nop
329
 
330
 stc    sr, r2
331
 
332
 cmp/eq #0x33, r0
333
 bt     .+6
334
 jmp    @r13
335
 nop
336
 
337
 mov    r2, r0
338
 cmp/eq #0x00, r0
339
 bt     .+6
340
 jmp    @r13
341
 nop
342
 
343
/************
344
 IRQ Priority
345
 ************/
346
 bra    _irq_priority
347
 nop
348
.align 4
349
_irq_priority:
350
 mov.l  _psys, r3
351
 
352
 mov    #0xf0, r0
353
 mov.l  _p40f40fff, r4 ! IRQ0 level=f
354
 mov.l  r4, @r3        ! not accepted
355
 ldc    r0, sr
356
 
357
 mov    #0xe0, r0
358
 mov.l  _p40f44fff, r4 ! IRQ4 level=f
359
 mov.l  r4, @r3
360
 nop
361
 nop
362
 nop
363
 nop
364
 ldc    r0, sr         ! accept after next instruction
365
 nop
366
 
367
 mov    #0x00, r0
368
 ldc    r0, sr
369
 mov    #0x10, r0
370
 mov.l  _p40147fff, r4 ! IRQ7 level=1
371
 mov.l  r4, @r3        ! FDEM
372
 nop                   !  fDE
373
 ldc    r0, sr         !   FDE (I<-1)
374
 nop                   !    fDE (int has masked)
375
 nop                   !     FDE not accepted
376
 nop
377
 mov    #0x00, r0
378
 ldc    r0, sr         ! accepted
379
 
380
/***********
381
 Emulate IRQ
382
 ***********/
383
 mov    #0x00, r0
384
 ldc    r0, sr
385
 mov    #0xaa, r0
386
 
387
 mov.l  _psys, r3
388
 mov.l  _p40a40fff, r4
389
 mov.l  r4, @r3 ! Emulate IRQ
390
 
391
 mov    #0, r4
392
 add    #1, r4
393
 add    #1, r4
394
 add    #1, r4
395
 add    #1, r4
396
 add    #1, r4
397
 add    #1, r4
398
 add    #1, r4
399
 add    #1, r4
400
 
401
 cmp/eq #0x77, r0
402
 bt     .+6
403
 jmp    @r13
404
 nop
405
 
406
 mov    #0xfc, r0
407
 and    r0, r2
408
 extu.b r2, r2
409
 mov    #0xa0, r0
410
 extu.b r0, r0
411
 cmp/eq r2, r0
412
 bt     .+6
413
 jmp    @r13
414
 nop
415
 
416
 mov    r4, r0
417
 cmp/eq #0x08, r0
418
 bt     .+6
419
 jmp    @r13
420
 nop
421
 
422
 
423
/***********
424
 Emulate NMI
425
 ***********/
426
 mov    #0xf0, r0
427
 ldc    r0, sr
428
 mov    #0xaa, r0
429
 
430
 mov.l  _psys, r3
431
 mov.l  _p80000fff, r4
432
 mov.l  r4, @r3 ! Emulate NMI
433
 
434
 mov    #0, r4
435
 add    #1, r4
436
 add    #1, r4
437
 add    #1, r4
438
 add    #1, r4
439
 add    #1, r4
440
 add    #1, r4
441
 add    #1, r4
442
 add    #1, r4
443
 
444
 cmp/eq #0x55, r0
445
 bt     .+6
446
 jmp    @r13
447
 nop
448
 
449
 mov    #0xfc, r0
450
 and    r0, r2
451
 extu.b r2, r2
452
 mov    #0xf0, r0
453
 extu.b r0, r0
454
 cmp/eq r2, r0
455
 bt     .+6
456
 jmp    @r13
457
 nop
458
 
459
 mov    r4, r0
460
 cmp/eq #0x08, r0
461
 bt     .+6
462
 jmp    @r13
463
 nop
464
 
465
 
466
 mov.l  _p80000fff, r4
467
 mov    #0x90, r0
468
 mov.l  r4, @r3 ! IRQ service after NMI service
469
 ldc    r0, sr
470
 nop
471
 
472
/*****
473
 TRAPA
474
 *****/
475
 mov    #0x00, r0
476
 ldc    r0, sr
477
 mov    #0xbb, r0
478
 
479
 trapa  #32
480
 
481
 stc    sr, r2
482
 
483
 cmp/eq #0x66, r0
484
 bt     .+6
485
 jmp    @r13
486
 nop
487
 
488
 mov    r2, r0
489
 cmp/eq #0x00, r0
490
 bt     .+6
491
 jmp    @r13
492
 nop
493
 
494
/***************************
495
 General Illegal Instruction
496
 ***************************/
497
 mov    #0x00, r0
498
 ldc    r0, sr
499
 mov    #0xee, r0
500
 
501
 .word 0xff00 ! Illegal Instruction
502
 
503
 stc    sr, r2
504
 
505
 cmp/eq #0x11, r0
506
 bt     .+6
507
 jmp    @r13
508
 nop
509
 
510
 mov    r2, r0
511
 cmp/eq #0x00, r0
512
 bt     .+6
513
 jmp    @r13
514
 nop
515
 
516
/************************
517
 Slot Illegal Instruction
518
 ************************/
519
 mov    #0x00, r0
520
 ldc    r0, sr
521
 mov    #0xdd, r0
522
 
523
 bra    _target
524
 bsr    _target
525
 nop
526
 nop
527
 jmp    @r13
528
 nop
529
 
530
_target:
531
 stc    sr, r2
532
 
533
 cmp/eq #0x22, r0
534
 bt     .+6
535
 jmp    @r13
536
 nop
537
 
538
 mov    r2, r0
539
 cmp/eq #0x00, r0
540
 bt     .+6
541
 jmp    @r13
542
 nop
543
/************************/
544
 mov    #0x00, r0
545
 ldc    r0, sr
546
 mov    #0xdd, r0
547
 
548
 bsr    _target2
549
 trapa  #36
550
 nop
551
 nop
552
 jmp    @r13
553
 nop
554
 
555
_target2:
556
 stc    sr, r2
557
 
558
 cmp/eq #0x22, r0
559
 bt     .+6
560
 jmp    @r13
561
 nop
562
 
563
 mov    r2, r0
564
 cmp/eq #0x00, r0
565
 bt     .+6
566
 jmp    @r13
567
 nop
568
/************************/
569
 mov    #0x00, r0
570
 ldc    r0, sr
571
 mov    #0xdd, r0
572
 
573
 bsr    _target3
574
 bsrf   r0
575
 nop
576
 nop
577
 jmp    @r13
578
 nop
579
 
580
_target3:
581
 stc    sr, r2
582
 
583
 cmp/eq #0x22, r0
584
 bt     .+6
585
 jmp    @r13
586
 nop
587
 
588
 mov    r2, r0
589
 cmp/eq #0x00, r0
590
 bt     .+6
591
 jmp    @r13
592
 nop
593
/************************/
594
 mov    #0x00, r0
595
 ldc    r0, sr
596
 mov    #0xdd, r0
597
 
598
 mov    #8, r1
599
 bsrf   r1
600
 braf   r1
601
 nop
602
 nop
603
 jmp    @r13
604
 nop
605
 
606
_target4:
607
 stc    sr, r2
608
 
609
 cmp/eq #0x22, r0
610
 bt     .+6
611
 jmp    @r13
612
 nop
613
 
614
 mov    r2, r0
615
 cmp/eq #0x00, r0
616
 bt     .+6
617
 jmp    @r13
618
 nop
619
/************************/
620
 mov    #0x00, r0
621
 ldc    r0, sr
622
 mov    #0xdd, r0
623
 
624
 mov    #8, r1
625
 braf   r1
626
 rte
627
 nop
628
 nop
629
 jmp    @r13
630
 nop
631
 
632
_target5:
633
 stc    sr, r2
634
 
635
 cmp/eq #0x22, r0
636
 bt     .+6
637
 jmp    @r13
638
 nop
639
 
640
 mov    r2, r0
641
 cmp/eq #0x00, r0
642
 bt     .+6
643
 jmp    @r13
644
 nop
645
/************************/
646
 mov    #0x00, r0
647
 mov.l  r0, @-r15
648
 mova   _target6, r0
649
 mov.l  r0, @-r15
650
 mov    #0xdd, r0
651
 
652
 rte
653
 jsr    @r0
654
 nop
655
 nop
656
 jmp    @r13
657
 nop
658
 
659
.align 4
660
_target6:
661
 stc    sr, r2
662
 
663
 cmp/eq #0x22, r0
664
 bt     .+6
665
 jmp    @r13
666
 nop
667
 
668
 mov    r2, r0
669
 cmp/eq #0x00, r0
670
 bt     .+6
671
 jmp    @r13
672
 nop
673
/************************/
674
 mov    #0x00, r0
675
 ldc    r0, sr
676
 mova   _target7, r0
677
 mov    r0, r1
678
 mov    #0xdd, r0
679
 
680
 jsr    @r1
681
 jmp    @r1
682
 nop
683
 nop
684
 jmp    @r13
685
 nop
686
 
687
.align 4
688
_target7:
689
 stc    sr, r2
690
 
691
 cmp/eq #0x22, r0
692
 bt     .+6
693
 jmp    @r13
694
 nop
695
 
696
 mov    r2, r0
697
 cmp/eq #0x00, r0
698
 bt     .+6
699
 jmp    @r13
700
 nop
701
/************************/
702
 mov    #0x00, r0
703
 ldc    r0, sr
704
 mova   _target8, r0
705
 mov    r0, r1
706
 mov    #0xdd, r0
707
 
708
 jmp    @r1
709
 bt     _target8
710
 nop
711
 nop
712
 jmp    @r13
713
 nop
714
 
715
.align 4
716
_target8:
717
 stc    sr, r2
718
 
719
 cmp/eq #0x22, r0
720
 bt     .+6
721
 jmp    @r13
722
 nop
723
 
724
 mov    r2, r0
725
 cmp/eq #0x00, r0
726
 bt     .+6
727
 jmp    @r13
728
 nop
729
/************************/
730
 mov    #0x00, r0
731
 ldc    r0, sr
732
 mova   _target9, r0
733
 mov    r0, r1
734
 mov    #0xdd, r0
735
 
736
 jmp    @r1
737
 bt/s   _target9
738
 nop
739
 nop
740
 jmp    @r13
741
 nop
742
 
743
.align 4
744
_target9:
745
 stc    sr, r2
746
 
747
 cmp/eq #0x22, r0
748
 bt     .+6
749
 jmp    @r13
750
 nop
751
 
752
 mov    r2, r0
753
 cmp/eq #0x00, r0
754
 bt     .+6
755
 jmp    @r13
756
 nop
757
/************************/
758
 mov    #0x00, r0
759
 ldc    r0, sr
760
 mov    #0xdd, r0
761
 
762
 bf/s   _target10
763
 bra    _target10
764
 nop
765
 nop
766
 jmp    @r13
767
 nop
768
 
769
_target10:
770
 stc    sr, r2
771
 
772
 cmp/eq #0x22, r0
773
 bt     .+6
774
 jmp    @r13
775
 nop
776
 
777
 mov    r2, r0
778
 cmp/eq #0x00, r0
779
 bt     .+6
780
 jmp    @r13
781
 nop
782
/************************/
783
 mov    #0x00, r0
784
 ldc    r0, sr
785
 mov    #0xdd, r0
786
 
787
 bra    _target11
788
 .word  0xffff ! General Illegal Instruction
789
 nop
790
 nop
791
 jmp    @r13
792
 nop
793
 
794
_target11:
795
 stc    sr, r2
796
 
797
 cmp/eq #0x22, r0
798
 bt     .+6
799
 jmp    @r13
800
 nop
801
 
802
 mov    r2, r0
803
 cmp/eq #0x00, r0
804
 bt     .+6
805
 jmp    @r13
806
 nop
807
/************************/
808
 bra _next
809
 nop
810
 
811
/*===================================================*/
812
/************
813
 TRAP Handler
814
 ************/
815
_trap32:
816
_trap36:
817
_trap40:
818
_trap44:
819
_trap48:
820
_trap52:
821
_trap56:
822
_trap60:
823
 mov    #0xff, r2
824
 ldc    r2, sr
825
 
826
 rte
827
 mov    #0x66, r0
828
 
829
/***********************
830
 General Illegal Handler
831
 ***********************/
832
_gnrl_ilgl:
833
 mov.l  @r15, r0
834
 add    #2, r0
835
 mov.l  r0, @r15
836
 
837
 mov    #0xff, r2
838
 ldc    r2, sr
839
 
840
 rte
841
 mov    #0x11, r0
842
 
843
/********************
844
 Slot Illegal Handler
845
 ********************/
846
_slot_ilgl:
847
 mov    #0xff, r2
848
 ldc    r2, sr
849
 
850
 rte
851
 mov    #0x22, r0
852
 
853
/*************************
854
 CPU Address Error Handler
855
 *************************/
856
_cpuerr:
857
 mov.l  @r15, r0
858
 mov    #0xfe, r8
859
 and    r8, r0
860
 mov.l  r0, @r15
861
 
862
 mov    #0xff, r2
863
 ldc    r2, sr
864
 
865
 rte
866
 mov    #0x33, r0
867
 
868
/*************************
869
 DMA Address Error Handler
870
 *************************/
871
_dmaerr:
872
 mov    #0xff, r2
873
 ldc    r2, sr
874
 
875
 rte
876
 mov    #0x44, r0
877
 
878
/************************************
879
 NMI (Non Maskable Interrupt) Handler
880
 ************************************/
881
_nmi:
882
 mov.l  _psys, r3
883
 mov.l  _p40a44fff, r0
884
 mov.l  r0, @r3 ! Emulate IRQ4/level 10, pending
885
 
886
 stc    sr, r2
887
 rte
888
 mov    #0x55, r0
889
 
890
/*******************************
891
 IRQ (Interrupt Request) Handler
892
 *******************************/
893
_irq0:
894
_irq1:
895
_irq2:
896
_irq3:
897
_irq5:
898
_irq6:
899
_irq7:
900
 stc    sr, r2
901
 rte
902
 mov    #0x77, r0
903
 
904
_irq4:
905
 rte
906
 nop
907
 
908
 
909
/**************
910
 Constant Table
911
 **************/
912
.align 4
913
_pram0     : .long _ram0
914
_psys      : .long _sys
915
_p80000fff : .long 0x80000fff
916
_p40a40fff : .long 0x40a40fff
917
_p40f40fff : .long 0x40f40fff
918
_p40f44fff : .long 0x40f44fff
919
_p40a44fff : .long 0x40a44fff
920
_p40147fff : .long 0x40147fff
921
_p20000fff : .long 0x20000fff
922
_p10000fff : .long 0x10000fff
923
_p08000fff : .long 0x08000fff
924
 
925
/*********************************************************
926
 Move to another Next ROM area to check hardware operation
927
 *********************************************************/
928
.align 2
929
_next:
930
 
931
 mov.l _pbranch_table, r0
932
 mov.l @(r0, r14), r12
933
 
934
 add #4, r14
935
 
936
 mov.l _pvector_top_table, r0
937
 mov.l @(r0, r14), r1
938
 ldc   r1, vbr
939
 
940
 jmp @r12
941
 nop
942
 
943
.align 4
944
_pbranch_table:     .long _branch_table
945
_pvector_top_table: .long _vector_top_table
946
_branch_table:
947
 .long _rom1+_test
948
 .long _rom2+_test
949
 .long _rom3+_test
950
 .long _rom0+_pass
951
_vector_top_table:
952
 .long _rom0
953
 .long _rom1
954
 .long _rom2
955
 .long _rom3
956
 .long _rom0
957
 
958
/**************
959
 Congraturation
960
 **************/
961
_pass:
962
 mov.l _ppass_value, r0
963
 mov.l _ppass_value, r1
964
 mov.l r0, @r1
965
 bra   _pass
966
 nop
967
.align 4
968
_ppass_value: .long 0x12345678
969
 
970
/**********
971
 You Failed
972
 **********/
973
_fail:
974
 mov.l _pfail_value, r0
975
 mov.l _pfail_value, r1
976
 bra   _fail
977
 nop
978
.align 4
979
_pfail_value: .long 0x88888888
980
 
981
.end
982
 
983
 

powered by: WebSVN 2.1.0

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