📄 spr16x16_16.s
字号:
movl 0xDEADBEEF(%eax),%ediblin_07: movl %edx,endc_07-4 movl 32(%esp),%ebp // cmap addl 24(%esp),%edi // x addl 24(%esp),%edi // x xorl %edx,%edx xorl %ecx,%ecx xorl %ebx,%ebx xorl %eax,%eax9: movb (%esi),%al movb 4(%esi),%bl testb %al,%al jz 7f movw (%ebp,%eax,2),%cx movw %cx,30(%edi)7: testb %bl,%bl jz 7f movw (%ebp,%ebx,2),%dx movw %dx,30-8(%edi)7: movb 1(%esi),%al movb 5(%esi),%bl testb %al,%al jz 7f movw (%ebp,%eax,2),%cx movw %cx,30-2(%edi)7: testb %bl,%bl jz 7f movw (%ebp,%ebx,2),%dx movw %dx,30-10(%edi)7: movb 2(%esi),%al movb 6(%esi),%bl testb %al,%al jz 7f movw (%ebp,%eax,2),%cx movw %cx,30-4(%edi)7: testb %bl,%bl jz 7f movw (%ebp,%ebx,2),%dx movw %dx,30-12(%edi)7: movb 3(%esi),%al movb 7(%esi),%bl testb %al,%al jz 7f movw (%ebp,%eax,2),%cx movw %cx,30-6(%edi)7: testb %bl,%bl jz 7f movw (%ebp,%ebx,2),%dx movw %dx,30-14(%edi)7: movb 8(%esi),%al movb 8+4(%esi),%bl testb %al,%al jz 7f movw (%ebp,%eax,2),%cx movw %cx,30-16(%edi)7: testb %bl,%bl jz 7f movw (%ebp,%ebx,2),%dx movw %dx,30-24(%edi)7: movb 8+1(%esi),%al movb 8+5(%esi),%bl testb %al,%al jz 7f movw (%ebp,%eax,2),%cx movw %cx,30-18(%edi)7: testb %bl,%bl jz 7f movw (%ebp,%ebx,2),%dx movw %dx,30-26(%edi)7: movb 8+2(%esi),%al movb 8+6(%esi),%bl testb %al,%al jz 7f movw (%ebp,%eax,2),%cx movw %cx,30-20(%edi)7: testb %bl,%bl jz 7f movw (%ebp,%ebx,2),%dx movw %dx,30-28(%edi)7: movb 8+3(%esi),%al movb 8+7(%esi),%bl testb %al,%al jz 7f movw (%ebp,%eax,2),%cx movw %cx,30-22(%edi)7: testb %bl,%bl jz 7f movw (%ebp,%ebx,2),%dx movw %dx,30-30(%edi)7: addl $16,%esi // Next Tile Line subl $0xDEADBEEF,%edi // Next Screen Linebitw_07: cmp $0xDEADBEEF,%esiendc_07: jne 9b popl %ebx popl %esi popl %edi popl %ebp retFUNC(Draw16x16_16) pushl %edi pushl %esi pushl %ebx movl 16(%esp),%esi // source movl 24(%esp),%ebx // y movl 28(%esp),%eax // cmap sall $2,%ebx movb %al,%ah // cmap movl 0xDEADBEEF(%ebx),%ediblin_08: mov %ax,%cx // cmap addl 20(%esp),%edi // x addl 20(%esp),%edi // x doubled normally ??? shll $16,%ecx // cmap movl $0xDEADBEEF,%edx // screen widthbitw_08: mov %ax,%cx // cmap movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) popl %ebx popl %esi popl %edi retFUNC(Draw16x16_16_FlipY) pushl %edi pushl %esi pushl %ebx movl 16(%esp),%esi // source movl 24(%esp),%ebx // y movl 28(%esp),%eax // cmap sall $2,%ebx movb %al,%ah // cmap movl 0xDEADBEEF(%ebx),%ediblin_09: mov %ax,%cx // cmap addl 20(%esp),%edi // x addl 20(%esp),%edi // x .// doubled ??? shll $16,%ecx // cmap movl $0xDEADBEEF,%edx // screen widthbitw_09: mov %ax,%cx // cmap movl 12(%esi),%eax movl 8(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 4(%esi),%eax movl (%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl 12(%esi),%eax movl 8(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 4(%esi),%eax movl (%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl 12(%esi),%eax movl 8(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 4(%esi),%eax movl (%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl 12(%esi),%eax movl 8(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 4(%esi),%eax movl (%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl 12(%esi),%eax movl 8(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 4(%esi),%eax movl (%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl 12(%esi),%eax movl 8(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 4(%esi),%eax movl (%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl 12(%esi),%eax movl 8(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 4(%esi),%eax movl (%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl 12(%esi),%eax movl 8(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 4(%esi),%eax movl (%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl 12(%esi),%eax movl 8(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 4(%esi),%eax movl (%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl 12(%esi),%eax movl 8(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 4(%esi),%eax movl (%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl 12(%esi),%eax movl 8(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 4(%esi),%eax movl (%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl 12(%esi),%eax movl 8(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 4(%esi),%eax movl (%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl 12(%esi),%eax movl 8(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 4(%esi),%eax movl (%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl 12(%esi),%eax movl 8(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 4(%esi),%eax movl (%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl 12(%esi),%eax movl 8(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 4(%esi),%eax movl (%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi addl %edx,%edi movl 12(%esi),%eax movl 8(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 4(%esi),%eax movl (%esi),%ebx orl %ecx,%eax orl %ecx,%ebx bswap %eax bswap %ebx movl %eax,8(%edi) movl %ebx,12(%edi) popl %ebx popl %esi popl %edi retFUNC(Draw16x16_16_FlipX) pushl %edi pushl %esi pushl %ebx movl 16(%esp),%esi // source movl 24(%esp),%ebx // y movl 28(%esp),%eax // cmap sall $2,%ebx movb %al,%ah // cmap movl 0xDEADBEEF(%ebx),%ediblin_10: mov %ax,%cx // cmap addl 20(%esp),%edi // x addl 20(%esp),%edi // x doubled !!! shll $16,%ecx // cmap movl $0xDEADBEEF,%edx // screen widthbitw_10: mov %ax,%cx // cmap movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi subl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi subl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi subl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi subl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi subl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi subl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi subl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi subl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi) movl %ebx,12(%edi) addl $16,%esi subl %edx,%edi movl (%esi),%eax movl 4(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,(%edi) movl %ebx,4(%edi) movl 8(%esi),%eax movl 12(%esi),%ebx orl %ecx,%eax orl %ecx,%ebx movl %eax,8(%edi)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -