; generated by Norcroft ARM C vsn 4.41 (Advanced RISC Machines) [Feb 17 1993] AREA |C$$code|, CODE, READONLY |x$codeseg| IMPORT |__rt_sdiv| EXPORT myMapCel myMapCel MOV ip,sp STMDB sp!,{a1-a4,v1-v6,r10,fp,ip,lr} MOV fp,ip LDMIA a2,{v1-v6,r10,ip} ; load pts MOV a2,#&8000 ADD a3,v1,a2 ; a3 = p0.x + (1 << 15) ADD a4,v2,a2 ; a4 = p0.y + (1 << 15) ADD a2,a1,#&10 STMIA a2,{a3,a4} ; store ccb_XPos, ccb_YPos SUB v3,v3,v1 MOV v3,v3,LSL #4 ; v3 = (p1.x - p0.x) << 4 SUB v4,v4,v2 MOV v4,v4,LSL #4 ; v4 = (p1.y - p0.y) << 4 SUB v1,r10,v1 ; v1 = p3.x - p0.x SUB v2,ip,v2 ; v2 = p3.y - p0.y MOV v5,v5,LSL #4 SUB v5,v5,v3 SUB v5,v5,r10,LSL #4 ; v5 = (p2.x << 4) - (p1.x - p0.x) - (p3.x << 4) MOV v6,v6,LSL #4 SUB v6,v6,v4 SUB v6,v6,ip,LSL #4 ; v6 = (p2.y << 4) - (p1.y - p0.y) - (p3.y << 4) ADD ip,a1,#&3c LDMIA ip,{a2,r10} ADD r10,a2,r10,LSL #16 ; r10 HI -- height, LO -- width STR a1,[sp] SUB sp,sp,#4 ; grow stack MOV a1,v3 MOV a2,v4 MOV v3,v1 MOV v4,v2 MOV v1,a1 MOV v2,a2 MOVS a2,v1 MOVNE a1,r10,LSL #16 MOVNE a1,a1,LSR #16 BLNE |__rt_sdiv| MOVNE v1,a1 MOVS a2,v2 MOVNE a1,r10,LSL #16 MOVNE a1,a1,LSR #16 BLNE |__rt_sdiv| MOVNE v2,a1 MOVS a2,v3 MOVNE a1,r10,LSR #16 BLNE |__rt_sdiv| MOVNE v3,a1 MOVS a2,v4 MOVNE a1,r10,LSR #16 BLNE |__rt_sdiv| MOVNE v4,a1 MOVS a2,v5 MOVNE a3,r10,LSL #16 MOVNE a3,a3,LSR #16 MOVNE a4,r10,LSR #16 MULNE a1,a3,a4 BLNE |__rt_sdiv| MOVNE v5,a1 MOVS a2,v6 MOVNE a3,r10,LSL #16 MOVNE a3,a3,LSR #16 MOVNE a4,r10,LSR #16 MULNE a1,a3,a4 BLNE |__rt_sdiv| MOVNE v6,a1 ; CMP v1,#0 ; CMPEQ v2,#0 ; MOVNE a2,#&80000 ; MOVNE a1,r10,LSL #16 ; MOVNE a1,a1,LSR #16 ; BLNE |__rt_sdiv| ; CMPNE v1,#0 ; SUBLT v1,v1,a1 ; ADDGT v1,v1,a1 ; CMP v2,#0 ; SUBLT v2,v2,a1 ; ADDGT v2,v2,a1 ; CMP v3,#0 ; CMPEQ v4,#0 ; MOVNE a2,#&8000 ; MOVNE a1,r10,LSR #16 ; BLNE |__rt_sdiv| ; CMPNE v3,#0 ; SUBLT v3,v3,a1 ; ADDGT v3,v3,a1 ; CMP v4,#0 ; SUBLT v4,v4,a1 ; ADDGT v4,v4,a1 ; CMP v5,#0 ; CMPEQ v6,#0 ; MOVNE a2,#&80000 ; MOVNE a3,r10,LSL #16 ; MOVNE a3,a3,LSR #16 ; MOVNE a4,r10,LSR #16 ; MULNE a1,a3,a4 ; BLNE |__rt_sdiv| ; CMPNE v5,#0 ; SUBLT v5,v5,a1 ; ADDGT v5,v5,a1 ; CMP v6,#0 ; SUBLT v6,v6,a1 ; ADDGT v6,v6,a1 LDR a1,[sp,#4] ADD a1,a1,#&18 STMIA a1,{v1-v6} LDMDB fp,{a1-a4,v1-v6,r10,fp,sp,pc} AREA |C$$data|,DATA |x$dataseg| END