1*d4f6e58fSAlex Bennée .global main 2*d4f6e58fSAlex Bennée .type main, @function 3*d4f6e58fSAlex Bennéemain: 4*d4f6e58fSAlex Bennée clearf nzvc 5*d4f6e58fSAlex Bennée setf nzv 6*d4f6e58fSAlex Bennée bcc 0f 7*d4f6e58fSAlex Bennée addq 1, $r3 8*d4f6e58fSAlex Bennée jump dofail 9*d4f6e58fSAlex Bennée 10*d4f6e58fSAlex Bennée0: 11*d4f6e58fSAlex Bennée clearf nzvc 12*d4f6e58fSAlex Bennée setf nzv 13*d4f6e58fSAlex Bennée bcs dofail 14*d4f6e58fSAlex Bennée addq 1,$r3 15*d4f6e58fSAlex Bennée 16*d4f6e58fSAlex Bennée clearf nzvc 17*d4f6e58fSAlex Bennée setf ncv 18*d4f6e58fSAlex Bennée bne 1f 19*d4f6e58fSAlex Bennée addq 1, $r3 20*d4f6e58fSAlex Bennée 21*d4f6e58fSAlex Bennéefail: 22*d4f6e58fSAlex Bennéedofail: 23*d4f6e58fSAlex Bennée jump _fail 24*d4f6e58fSAlex Bennée 25*d4f6e58fSAlex Bennée1: 26*d4f6e58fSAlex Bennée clearf nzvc 27*d4f6e58fSAlex Bennée setf ncv 28*d4f6e58fSAlex Bennée beq dofail 29*d4f6e58fSAlex Bennée addq 1,$r3 30*d4f6e58fSAlex Bennée 31*d4f6e58fSAlex Bennée clearf nzvc 32*d4f6e58fSAlex Bennée setf ncz 33*d4f6e58fSAlex Bennée bvc 2f 34*d4f6e58fSAlex Bennée addq 1,$r3 35*d4f6e58fSAlex Bennée jump dofail 36*d4f6e58fSAlex Bennée 37*d4f6e58fSAlex Bennée2: 38*d4f6e58fSAlex Bennée clearf nzvc 39*d4f6e58fSAlex Bennée setf ncz 40*d4f6e58fSAlex Bennée bvs dofail 41*d4f6e58fSAlex Bennée addq 1,$r3 42*d4f6e58fSAlex Bennée 43*d4f6e58fSAlex Bennée clearf nzvc 44*d4f6e58fSAlex Bennée setf vcz 45*d4f6e58fSAlex Bennée bpl 3f 46*d4f6e58fSAlex Bennée addq 1,$r3 47*d4f6e58fSAlex Bennée jump fail 48*d4f6e58fSAlex Bennée3: 49*d4f6e58fSAlex Bennée clearf nzvc 50*d4f6e58fSAlex Bennée setf vcz 51*d4f6e58fSAlex Bennée bmi dofail 52*d4f6e58fSAlex Bennée addq 1,$r3 53*d4f6e58fSAlex Bennée 54*d4f6e58fSAlex Bennée clearf nzvc 55*d4f6e58fSAlex Bennée setf nv 56*d4f6e58fSAlex Bennée bls dofail 57*d4f6e58fSAlex Bennée addq 1,$r3 58*d4f6e58fSAlex Bennée 59*d4f6e58fSAlex Bennée clearf nzvc 60*d4f6e58fSAlex Bennée setf nv 61*d4f6e58fSAlex Bennée bhi 4f 62*d4f6e58fSAlex Bennée addq 1,$r3 63*d4f6e58fSAlex Bennée jump dofail 64*d4f6e58fSAlex Bennée 65*d4f6e58fSAlex Bennée4: 66*d4f6e58fSAlex Bennée clearf nzvc 67*d4f6e58fSAlex Bennée setf zc 68*d4f6e58fSAlex Bennée bge 5f 69*d4f6e58fSAlex Bennée addq 1,$r3 70*d4f6e58fSAlex Bennée jump dofail 71*d4f6e58fSAlex Bennée 72*d4f6e58fSAlex Bennée5: 73*d4f6e58fSAlex Bennée clearf nzvc 74*d4f6e58fSAlex Bennée setf zc 75*d4f6e58fSAlex Bennée blt dofail 76*d4f6e58fSAlex Bennée addq 1,$r3 77*d4f6e58fSAlex Bennée 78*d4f6e58fSAlex Bennée clearf nzvc 79*d4f6e58fSAlex Bennée setf c 80*d4f6e58fSAlex Bennée bgt 6f 81*d4f6e58fSAlex Bennée addq 1,$r3 82*d4f6e58fSAlex Bennée jump fail 83*d4f6e58fSAlex Bennée 84*d4f6e58fSAlex Bennée6: 85*d4f6e58fSAlex Bennée clearf nzvc 86*d4f6e58fSAlex Bennée setf c 87*d4f6e58fSAlex Bennée ble dofail 88*d4f6e58fSAlex Bennée addq 1,$r3 89*d4f6e58fSAlex Bennée 90*d4f6e58fSAlex Bennée;;;;;;;;;; 91*d4f6e58fSAlex Bennée 92*d4f6e58fSAlex Bennée setf nzvc 93*d4f6e58fSAlex Bennée clearf nzv 94*d4f6e58fSAlex Bennée bcc dofail 95*d4f6e58fSAlex Bennée addq 1,$r3 96*d4f6e58fSAlex Bennée 97*d4f6e58fSAlex Bennée setf nzvc 98*d4f6e58fSAlex Bennée clearf nzv 99*d4f6e58fSAlex Bennée bcs 0f 100*d4f6e58fSAlex Bennée addq 1,$r3 101*d4f6e58fSAlex Bennée jump fail 102*d4f6e58fSAlex Bennée 103*d4f6e58fSAlex Bennée0: 104*d4f6e58fSAlex Bennée setf nzvc 105*d4f6e58fSAlex Bennée clearf ncv 106*d4f6e58fSAlex Bennée bne dofail 107*d4f6e58fSAlex Bennée addq 1,$r3 108*d4f6e58fSAlex Bennée 109*d4f6e58fSAlex Bennée setf nzvc 110*d4f6e58fSAlex Bennée clearf ncv 111*d4f6e58fSAlex Bennée beq 1f 112*d4f6e58fSAlex Bennée addq 1,$r3 113*d4f6e58fSAlex Bennée jump fail 114*d4f6e58fSAlex Bennée 115*d4f6e58fSAlex Bennée1: 116*d4f6e58fSAlex Bennée setf nzvc 117*d4f6e58fSAlex Bennée clearf ncz 118*d4f6e58fSAlex Bennée bvc dofail 119*d4f6e58fSAlex Bennée addq 1,$r3 120*d4f6e58fSAlex Bennée 121*d4f6e58fSAlex Bennée setf nzvc 122*d4f6e58fSAlex Bennée clearf ncz 123*d4f6e58fSAlex Bennée bvs 2f 124*d4f6e58fSAlex Bennée addq 1,$r3 125*d4f6e58fSAlex Bennée jump fail 126*d4f6e58fSAlex Bennée 127*d4f6e58fSAlex Bennée2: 128*d4f6e58fSAlex Bennée setf nzvc 129*d4f6e58fSAlex Bennée clearf vcz 130*d4f6e58fSAlex Bennée bpl dofail 131*d4f6e58fSAlex Bennée addq 1,$r3 132*d4f6e58fSAlex Bennée 133*d4f6e58fSAlex Bennée setf nzvc 134*d4f6e58fSAlex Bennée clearf vcz 135*d4f6e58fSAlex Bennée bmi 3f 136*d4f6e58fSAlex Bennée addq 1,$r3 137*d4f6e58fSAlex Bennée jump fail 138*d4f6e58fSAlex Bennée 139*d4f6e58fSAlex Bennée3: 140*d4f6e58fSAlex Bennée setf nzvc 141*d4f6e58fSAlex Bennée clearf nv 142*d4f6e58fSAlex Bennée bls 4f 143*d4f6e58fSAlex Bennée addq 1,$r3 144*d4f6e58fSAlex Bennée jump fail 145*d4f6e58fSAlex Bennée 146*d4f6e58fSAlex Bennée4: 147*d4f6e58fSAlex Bennée setf nzvc 148*d4f6e58fSAlex Bennée clearf nv 149*d4f6e58fSAlex Bennée bhi dofail 150*d4f6e58fSAlex Bennée addq 1,$r3 151*d4f6e58fSAlex Bennée 152*d4f6e58fSAlex Bennée setf zvc 153*d4f6e58fSAlex Bennée clearf nzc 154*d4f6e58fSAlex Bennée bge dofail 155*d4f6e58fSAlex Bennée addq 1,$r3 156*d4f6e58fSAlex Bennée 157*d4f6e58fSAlex Bennée setf nzc 158*d4f6e58fSAlex Bennée clearf vzc 159*d4f6e58fSAlex Bennée blt 5f 160*d4f6e58fSAlex Bennée addq 1,$r3 161*d4f6e58fSAlex Bennée jump fail 162*d4f6e58fSAlex Bennée 163*d4f6e58fSAlex Bennée5: 164*d4f6e58fSAlex Bennée setf nzvc 165*d4f6e58fSAlex Bennée clearf c 166*d4f6e58fSAlex Bennée bgt dofail 167*d4f6e58fSAlex Bennée addq 1,$r3 168*d4f6e58fSAlex Bennée 169*d4f6e58fSAlex Bennée setf nzvc 170*d4f6e58fSAlex Bennée clearf c 171*d4f6e58fSAlex Bennée ble 6f 172*d4f6e58fSAlex Bennée addq 1,$r3 173*d4f6e58fSAlex Bennée jump fail 174*d4f6e58fSAlex Bennée 175*d4f6e58fSAlex Bennée6: 176*d4f6e58fSAlex Bennée ; do a forward branch. 177*d4f6e58fSAlex Bennée ba 2f 178*d4f6e58fSAlex Bennée nop 179*d4f6e58fSAlex Bennée .fill 100 180*d4f6e58fSAlex Bennée1: 181*d4f6e58fSAlex Bennée ba 3f 182*d4f6e58fSAlex Bennée nop 183*d4f6e58fSAlex Bennée .fill 800 184*d4f6e58fSAlex Bennée2: 185*d4f6e58fSAlex Bennée ba 1b 186*d4f6e58fSAlex Bennée nop 187*d4f6e58fSAlex Bennée .fill 1024 188*d4f6e58fSAlex Bennée3: 189*d4f6e58fSAlex Bennée 190*d4f6e58fSAlex Bennée moveq 31, $r0 191*d4f6e58fSAlex Bennée1: bne 1b 192*d4f6e58fSAlex Bennée subq 1, $r0 193*d4f6e58fSAlex Bennée 194*d4f6e58fSAlex Bennée jsr pass 195*d4f6e58fSAlex Bennée moveq 0, $r10 196*d4f6e58fSAlex Bennée ret 197*d4f6e58fSAlex Bennée nop 198