home *** CD-ROM | disk | FTP | other *** search
- #name ^.Object.HellShift
- #type &ffd
-
- .hellshift
- DCD hellshift0-hellshift
- DCD hellshift1-hellshift
- DCD hellshift2-hellshift
- DCD hellshift3-hellshift
- .hellshift0
- STMFD R13!,{R9}
- ADD R11,R11,R9
- RSB R9,R9,#96
- s0mac
- LDMFD R13!,{R9}
- SUB R11,R11,#96
- s0mac
- MOV PC,R14
-
-
-
- macro s0mac {
- CMP R9,#64
- BLT _hsk00
- LDMIA R11!,{R0-R7}
- STMIA R10!,{R0-R7}
- LDMIA R11!,{R0-R7}
- STMIA R10!,{R0-R7}
- SUB R9,R9,#64
- ._hsk00
- CMP R9,#32
- BLT _hsk01
- LDMIA R11!,{R0-R7}
- STMIA R10!,{R0-R7}
- SUB R9,R9,#32
- ._hsk01
- CMP R9,#16
- BLT _hsk02
- LDMIA R11!,{R0-R3}
- STMIA R10!,{R0-R3}
- SUB R9,R9,#16
- ._hsk02
- CMP R9,#8
- BLT _hsk03
- LDMIA R11!,{R0-R1}
- STMIA R10!,{R0-R1}
- SUB R9,R9,#8
- ._hsk03
- CMP R9,#4
- LDRGE R0,[R11],#4
- STRGE R0,[R10],#4
- }
-
- .hellshift1
- STMFD R13!,{R9}
- ADD R11,R11,R9
- RSB R9,R9,#92
-
- s1mac
- LDMFD R13!,{R9}
- LDR R0,[R11]
- SUB R11,R11,#92
- LDR R1,[R11]
- MOV R0,R0,LSR #8
- ORR R0,R0,R1,LSL #24
- STR R0,[R10],#4
- s1mac
- MOV PC,R14
-
-
-
- macro s1mac {
- CMP R9,#64
- BLT _hsk00
- LDMIA R11!,{R0-R8}
- SUB R11,R11,#4
- MOV R0,R0,LSR #8
- ORR R0,R0,R1,LSL #24
- MOV R1,R1,LSR #8
- ORR R1,R1,R2,LSL #24
- MOV R2,R2,LSR #8
- ORR R2,R2,R3,LSL #24
- MOV R3,R3,LSR #8
- ORR R3,R3,R4,LSL #24
- MOV R4,R4,LSR #8
- ORR R4,R4,R5,LSL #24
- MOV R5,R5,LSR #8
- ORR R5,R5,R6,LSL #24
- MOV R6,R6,LSR #8
- ORR R6,R6,R7,LSL #24
- MOV R7,R7,LSR #8
- ORR R7,R7,R8,LSL #24
- STMIA R10!,{R0-R7}
- LDMIA R11!,{R0-R8}
- SUB R11,R11,#4
- MOV R0,R0,LSR #8
- ORR R0,R0,R1,LSL #24
- MOV R1,R1,LSR #8
- ORR R1,R1,R2,LSL #24
- MOV R2,R2,LSR #8
- ORR R2,R2,R3,LSL #24
- MOV R3,R3,LSR #8
- ORR R3,R3,R4,LSL #24
- MOV R4,R4,LSR #8
- ORR R4,R4,R5,LSL #24
- MOV R5,R5,LSR #8
- ORR R5,R5,R6,LSL #24
- MOV R6,R6,LSR #8
- ORR R6,R6,R7,LSL #24
- MOV R7,R7,LSR #8
- ORR R7,R7,R8,LSL #24
- STMIA R10!,{R0-R7}
- SUB R9,R9,#64
- ._hsk00
- CMP R9,#32
- BLT _hsk01
- LDMIA R11!,{R0-R8}
- SUB R11,R11,#4
- MOV R0,R0,LSR #8
- ORR R0,R0,R1,LSL #24
- MOV R1,R1,LSR #8
- ORR R1,R1,R2,LSL #24
- MOV R2,R2,LSR #8
- ORR R2,R2,R3,LSL #24
- MOV R3,R3,LSR #8
- ORR R3,R3,R4,LSL #24
- MOV R4,R4,LSR #8
- ORR R4,R4,R5,LSL #24
- MOV R5,R5,LSR #8
- ORR R5,R5,R6,LSL #24
- MOV R6,R6,LSR #8
- ORR R6,R6,R7,LSL #24
- MOV R7,R7,LSR #8
- ORR R7,R7,R8,LSL #24
- STMIA R10!,{R0-R7}
- SUB R9,R9,#32
- ._hsk01
- CMP R9,#16
- BLT _hsk02
- LDMIA R11!,{R0-R4}
- SUB R11,R11,#4
- MOV R0,R0,LSR #8
- ORR R0,R0,R1,LSL #24
- MOV R1,R1,LSR #8
- ORR R1,R1,R2,LSL #24
- MOV R2,R2,LSR #8
- ORR R2,R2,R3,LSL #24
- MOV R3,R3,LSR #8
- ORR R3,R3,R4,LSL #24
- STMIA R10!,{R0-R3}
- SUB R9,R9,#16
- ._hsk02
- CMP R9,#8
- BLT _hsk03
- LDMIA R11!,{R0-R2}
- SUB R11,R11,#4
- MOV R0,R0,LSR #8
- ORR R0,R0,R1,LSL #24
- MOV R1,R1,LSR #8
- ORR R1,R1,R2,LSL #24
- STMIA R10!,{R0-R1}
- SUB R9,R9,#8
- ._hsk03
- CMP R9,#4
- LDRGE R0,[R11],#4
- LDRGE R1,[R11]
- MOV R0,R0,LSR #8
- ORR R0,R0,R1,LSL #24
- STRGE R0,[R10],#4
- }
-
- .hellshift2
- STMFD R13!,{R9}
- ADD R11,R11,R9
- RSB R9,R9,#92
-
- s2mac
- LDMFD R13!,{R9}
- LDR R0,[R11]
- SUB R11,R11,#92
- LDR R1,[R11]
- MOV R0,R0,LSR #16
- ORR R0,R0,R1,LSL #16
- STR R0,[R10],#4
- s2mac
- MOV PC,R14
-
-
-
- macro s2mac {
- CMP R9,#64
- BLT _hsk00
- LDMIA R11!,{R0-R8}
- SUB R11,R11,#4
- MOV R0,R0,LSR #16
- ORR R0,R0,R1,LSL #16
- MOV R1,R1,LSR #16
- ORR R1,R1,R2,LSL #16
- MOV R2,R2,LSR #16
- ORR R2,R2,R3,LSL #16
- MOV R3,R3,LSR #16
- ORR R3,R3,R4,LSL #16
- MOV R4,R4,LSR #16
- ORR R4,R4,R5,LSL #16
- MOV R5,R5,LSR #16
- ORR R5,R5,R6,LSL #16
- MOV R6,R6,LSR #16
- ORR R6,R6,R7,LSL #16
- MOV R7,R7,LSR #16
- ORR R7,R7,R8,LSL #16
- STMIA R10!,{R0-R7}
- LDMIA R11!,{R0-R8}
- SUB R11,R11,#4
- MOV R0,R0,LSR #16
- ORR R0,R0,R1,LSL #16
- MOV R1,R1,LSR #16
- ORR R1,R1,R2,LSL #16
- MOV R2,R2,LSR #16
- ORR R2,R2,R3,LSL #16
- MOV R3,R3,LSR #16
- ORR R3,R3,R4,LSL #16
- MOV R4,R4,LSR #16
- ORR R4,R4,R5,LSL #16
- MOV R5,R5,LSR #16
- ORR R5,R5,R6,LSL #16
- MOV R6,R6,LSR #16
- ORR R6,R6,R7,LSL #16
- MOV R7,R7,LSR #16
- ORR R7,R7,R8,LSL #16
- STMIA R10!,{R0-R7}
- SUB R9,R9,#64
- ._hsk00
- CMP R9,#32
- BLT _hsk01
- LDMIA R11!,{R0-R8}
- SUB R11,R11,#4
- MOV R0,R0,LSR #16
- ORR R0,R0,R1,LSL #16
- MOV R1,R1,LSR #16
- ORR R1,R1,R2,LSL #16
- MOV R2,R2,LSR #16
- ORR R2,R2,R3,LSL #16
- MOV R3,R3,LSR #16
- ORR R3,R3,R4,LSL #16
- MOV R4,R4,LSR #16
- ORR R4,R4,R5,LSL #16
- MOV R5,R5,LSR #16
- ORR R5,R5,R6,LSL #16
- MOV R6,R6,LSR #16
- ORR R6,R6,R7,LSL #16
- MOV R7,R7,LSR #16
- ORR R7,R7,R8,LSL #16
- STMIA R10!,{R0-R7}
- SUB R9,R9,#32
- ._hsk01
- CMP R9,#16
- BLT _hsk02
- LDMIA R11!,{R0-R4}
- SUB R11,R11,#4
- MOV R0,R0,LSR #16
- ORR R0,R0,R1,LSL #16
- MOV R1,R1,LSR #16
- ORR R1,R1,R2,LSL #16
- MOV R2,R2,LSR #16
- ORR R2,R2,R3,LSL #16
- MOV R3,R3,LSR #16
- ORR R3,R3,R4,LSL #16
- STMIA R10!,{R0-R3}
- SUB R9,R9,#16
- ._hsk02
- CMP R9,#8
- BLT _hsk03
- LDMIA R11!,{R0-R2}
- SUB R11,R11,#4
- MOV R0,R0,LSR #16
- ORR R0,R0,R1,LSL #16
- MOV R1,R1,LSR #16
- ORR R1,R1,R2,LSL #16
- STMIA R10!,{R0-R1}
- SUB R9,R9,#8
- ._hsk03
- CMP R9,#4
- LDRGE R0,[R11],#4
- LDRGE R1,[R11]
- MOV R0,R0,LSR #16
- ORR R0,R0,R1,LSL #16
- STRGE R0,[R10],#4
- }
-
- .hellshift3
- STMFD R13!,{R9}
- ADD R11,R11,R9
- RSB R9,R9,#92
-
- s3mac
- LDMFD R13!,{R9}
- LDR R0,[R11]
- SUB R11,R11,#92
- LDR R1,[R11]
- MOV R0,R0,LSR #24
- ORR R0,R0,R1,LSL #8
- STR R0,[R10],#4
- s3mac
- MOV PC,R14
-
-
-
- macro s3mac {
- CMP R9,#64
- BLT _hsk00
- LDMIA R11!,{R0-R8}
- SUB R11,R11,#4
- MOV R0,R0,LSR #24
- ORR R0,R0,R1,LSL #8
- MOV R1,R1,LSR #24
- ORR R1,R1,R2,LSL #8
- MOV R2,R2,LSR #24
- ORR R2,R2,R3,LSL #8
- MOV R3,R3,LSR #24
- ORR R3,R3,R4,LSL #8
- MOV R4,R4,LSR #24
- ORR R4,R4,R5,LSL #8
- MOV R5,R5,LSR #24
- ORR R5,R5,R6,LSL #8
- MOV R6,R6,LSR #24
- ORR R6,R6,R7,LSL #8
- MOV R7,R7,LSR #24
- ORR R7,R7,R8,LSL #8
- STMIA R10!,{R0-R7}
- LDMIA R11!,{R0-R8}
- SUB R11,R11,#4
- MOV R0,R0,LSR #24
- ORR R0,R0,R1,LSL #8
- MOV R1,R1,LSR #24
- ORR R1,R1,R2,LSL #8
- MOV R2,R2,LSR #24
- ORR R2,R2,R3,LSL #8
- MOV R3,R3,LSR #24
- ORR R3,R3,R4,LSL #8
- MOV R4,R4,LSR #24
- ORR R4,R4,R5,LSL #8
- MOV R5,R5,LSR #24
- ORR R5,R5,R6,LSL #8
- MOV R6,R6,LSR #24
- ORR R6,R6,R7,LSL #8
- MOV R7,R7,LSR #24
- ORR R7,R7,R8,LSL #8
- STMIA R10!,{R0-R7}
- SUB R9,R9,#64
- ._hsk00
- CMP R9,#32
- BLT _hsk01
- LDMIA R11!,{R0-R8}
- SUB R11,R11,#4
- MOV R0,R0,LSR #24
- ORR R0,R0,R1,LSL #8
- MOV R1,R1,LSR #24
- ORR R1,R1,R2,LSL #8
- MOV R2,R2,LSR #24
- ORR R2,R2,R3,LSL #8
- MOV R3,R3,LSR #24
- ORR R3,R3,R4,LSL #8
- MOV R4,R4,LSR #24
- ORR R4,R4,R5,LSL #8
- MOV R5,R5,LSR #24
- ORR R5,R5,R6,LSL #8
- MOV R6,R6,LSR #24
- ORR R6,R6,R7,LSL #8
- MOV R7,R7,LSR #24
- ORR R7,R7,R8,LSL #8
- STMIA R10!,{R0-R7}
- SUB R9,R9,#32
- ._hsk01
- CMP R9,#16
- BLT _hsk02
- LDMIA R11!,{R0-R4}
- SUB R11,R11,#4
- MOV R0,R0,LSR #24
- ORR R0,R0,R1,LSL #8
- MOV R1,R1,LSR #24
- ORR R1,R1,R2,LSL #8
- MOV R2,R2,LSR #24
- ORR R2,R2,R3,LSL #8
- MOV R3,R3,LSR #24
- ORR R3,R3,R4,LSL #8
- STMIA R10!,{R0-R3}
- SUB R9,R9,#16
- ._hsk02
- CMP R9,#8
- BLT _hsk03
- LDMIA R11!,{R0-R2}
- SUB R11,R11,#4
- MOV R0,R0,LSR #24
- ORR R0,R0,R1,LSL #8
- MOV R1,R1,LSR #24
- ORR R1,R1,R2,LSL #8
- STMIA R10!,{R0-R1}
- SUB R9,R9,#8
- ._hsk03
- CMP R9,#4
- LDRGE R0,[R11],#4
- LDRGE R1,[R11]
- MOV R0,R0,LSR #24
- ORR R0,R0,R1,LSL #8
- STRGE R0,[R10],#4
- }
-