Removed old cnibbles assembly output

This commit is contained in:
2014-12-05 03:05:43 +01:00
parent a659c072da
commit ee920a3888
-744
View File
@@ -1,744 +0,0 @@
.file "cnibbles.c"
.local p_screen
.comm p_screen,8,8
.text
.globl nib_poll_kbd
.type nib_poll_kbd, @function
nib_poll_kbd:
.LFB0:
.cfi_startproc
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
movq %rsp, %rbp
.cfi_def_cfa_register 6
subq $16, %rsp
movq stdscr@GOTPCREL(%rip), %rax
movq (%rax), %rax
movq %rax, %rdi
call wgetch@PLT
movl %eax, -4(%rbp)
movl -4(%rbp), %eax
leave
.cfi_def_cfa 7, 8
ret
.cfi_endproc
.LFE0:
.size nib_poll_kbd, .-nib_poll_kbd
.section .rodata
.LC0:
.string "%c"
.text
.globl nib_put_scr
.type nib_put_scr, @function
nib_put_scr:
.LFB1:
.cfi_startproc
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
movq %rsp, %rbp
.cfi_def_cfa_register 6
subq $16, %rsp
movl %edi, -4(%rbp)
movl %esi, -8(%rbp)
movl %edx, -12(%rbp)
movl -12(%rbp), %edx
movl -4(%rbp), %esi
movl -8(%rbp), %eax
movl %edx, %ecx
leaq .LC0(%rip), %rdx
movl %eax, %edi
movl $0, %eax
call mvprintw@PLT
movq p_screen(%rip), %rax
movq %rax, %rdi
call wrefresh@PLT
leave
.cfi_def_cfa 7, 8
ret
.cfi_endproc
.LFE1:
.size nib_put_scr, .-nib_put_scr
.globl nib_init
.type nib_init, @function
nib_init:
.LFB2:
.cfi_startproc
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
movq %rsp, %rbp
.cfi_def_cfa_register 6
movl $0, %edi
call time@PLT
movl %eax, %edi
call srand@PLT
call initscr@PLT
movq %rax, p_screen(%rip)
call start_color@PLT
movl $0, %edi
call curs_set@PLT
call noecho@PLT
movq p_screen(%rip), %rax
movl $1, %esi
movq %rax, %rdi
call keypad@PLT
movq p_screen(%rip), %rax
movl $1, %esi
movq %rax, %rdi
call nodelay@PLT
popq %rbp
.cfi_def_cfa 7, 8
ret
.cfi_endproc
.LFE2:
.size nib_init, .-nib_init
.globl nib_end
.type nib_end, @function
nib_end:
.LFB3:
.cfi_startproc
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
movq %rsp, %rbp
.cfi_def_cfa_register 6
call endwin@PLT
movl $0, %edi
call exit@PLT
.cfi_endproc
.LFE3:
.size nib_end, .-nib_end
.globl startLength
.bss
.align 4
.type startLength, @object
.size startLength, 4
startLength:
.zero 4
.globl startApples
.align 4
.type startApples, @object
.size startApples, 4
startApples:
.zero 4
.comm currentTick,4,4
.comm snake,9600,64
.comm snakeLength,4,4
.comm snakeX,4,4
.comm snakeY,4,4
.comm snakeDirX,4,4
.comm snakeDirY,4,4
.comm numApples,4,4
.text
.globl start_game
.type start_game, @function
start_game:
.LFB4:
.cfi_startproc
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
movq %rsp, %rbp
.cfi_def_cfa_register 6
subq $48, %rsp
movl %edi, -36(%rbp)
movl %esi, -40(%rbp)
movl startLength(%rip), %eax
testl %eax, %eax
jne .L7
movl -36(%rbp), %eax
movl %eax, startLength(%rip)
.L7:
movl startApples(%rip), %eax
testl %eax, %eax
jne .L8
movl -40(%rbp), %eax
movl %eax, startApples(%rip)
.L8:
movq currentTick@GOTPCREL(%rip), %rax
movl $0, (%rax)
movl -36(%rbp), %edx
movq snakeLength@GOTPCREL(%rip), %rax
movl %edx, (%rax)
movl -40(%rbp), %edx
movq numApples@GOTPCREL(%rip), %rax
movl %edx, (%rax)
call nib_init
movl $0, -20(%rbp)
jmp .L9
.L10:
movq snakeLength@GOTPCREL(%rip), %rax
movl (%rax), %eax
movl %eax, %ecx
movq snake@GOTPCREL(%rip), %rax
movl -20(%rbp), %edx
movl %ecx, (%rax,%rdx,4)
addl $1, -20(%rbp)
.L9:
cmpl $2399, -20(%rbp)
jbe .L10
movq snakeX@GOTPCREL(%rip), %rax
movl $30, (%rax)
movq snakeY@GOTPCREL(%rip), %rax
movl $20, (%rax)
movq snakeDirX@GOTPCREL(%rip), %rax
movl $0, (%rax)
movq snakeDirY@GOTPCREL(%rip), %rax
movl $-1, (%rax)
movl $0, -16(%rbp)
jmp .L11
.L12:
movq snakeX@GOTPCREL(%rip), %rax
movl (%rax), %ecx
movl $-2004318071, %edx
movl %ecx, %eax
mull %edx
movl %edx, %eax
shrl $5, %eax
movl %eax, -8(%rbp)
movl -8(%rbp), %eax
movl %eax, %edx
leal 0(,%rdx,4), %eax
movl %eax, %edx
movl %edx, %eax
sall $4, %eax
subl %edx, %eax
subl %eax, %ecx
movl %ecx, %eax
movl %eax, -8(%rbp)
movq snakeY@GOTPCREL(%rip), %rax
movl (%rax), %edx
movl -16(%rbp), %eax
leal (%rdx,%rax), %ecx
movl $-858993459, %edx
movl %ecx, %eax
mull %edx
movl %edx, %eax
shrl $5, %eax
movl %eax, -4(%rbp)
movl -4(%rbp), %edx
movl %edx, %eax
sall $2, %eax
addl %edx, %eax
sall $3, %eax
subl %eax, %ecx
movl %ecx, %eax
movl %eax, -4(%rbp)
movl -4(%rbp), %eax
sall $2, %eax
movl %eax, %edx
sall $4, %edx
subl %eax, %edx
movl -8(%rbp), %eax
leal (%rdx,%rax), %ecx
movl -16(%rbp), %edx
movq snake@GOTPCREL(%rip), %rax
movl %ecx, %ecx
movl %edx, (%rax,%rcx,4)
addl $1, -16(%rbp)
.L11:
movq snakeLength@GOTPCREL(%rip), %rax
movl (%rax), %eax
cmpl %eax, -16(%rbp)
jb .L12
movl $0, %edi
call time@PLT
movl %eax, %edi
call srand@PLT
movl $0, -12(%rbp)
jmp .L13
.L14:
movl $0, %eax
call spawnApple
addl $1, -12(%rbp)
.L13:
movq numApples@GOTPCREL(%rip), %rax
movl (%rax), %eax
cmpl %eax, -12(%rbp)
jb .L14
.L15:
movl $0, %eax
call tick
movl $0, %eax
call draw
jmp .L15
.cfi_endproc
.LFE4:
.size start_game, .-start_game
.globl spawnApple
.type spawnApple, @function
spawnApple:
.LFB5:
.cfi_startproc
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
movq %rsp, %rbp
.cfi_def_cfa_register 6
subq $16, %rsp
call rand@PLT
movl %eax, %ecx
movl $-2004318071, %edx
movl %ecx, %eax
imull %edx
leal (%rdx,%rcx), %eax
sarl $5, %eax
movl %eax, %edx
movl %ecx, %eax
sarl $31, %eax
subl %eax, %edx
movl %edx, %eax
movl %eax, %edx
leal 0(,%rdx,4), %eax
movl %eax, %edx
movl %edx, %eax
sall $4, %eax
subl %edx, %eax
subl %eax, %ecx
movl %ecx, %eax
movl %eax, -8(%rbp)
call rand@PLT
movl %eax, %ecx
movl $1717986919, %edx
movl %ecx, %eax
imull %edx
sarl $4, %edx
movl %ecx, %eax
sarl $31, %eax
subl %eax, %edx
movl %edx, %eax
sall $2, %eax
addl %edx, %eax
sall $3, %eax
subl %eax, %ecx
movl %ecx, %edx
movl %edx, -4(%rbp)
jmp .L17
.L18:
call rand@PLT
movl %eax, %ecx
movl $-2004318071, %edx
movl %ecx, %eax
imull %edx
leal (%rdx,%rcx), %eax
sarl $5, %eax
movl %eax, %edx
movl %ecx, %eax
sarl $31, %eax
subl %eax, %edx
movl %edx, %eax
movl %eax, %edx
leal 0(,%rdx,4), %eax
movl %eax, %edx
movl %edx, %eax
sall $4, %eax
subl %edx, %eax
subl %eax, %ecx
movl %ecx, %eax
movl %eax, -8(%rbp)
call rand@PLT
movl %eax, %ecx
movl $1717986919, %edx
movl %ecx, %eax
imull %edx
sarl $4, %edx
movl %ecx, %eax
sarl $31, %eax
subl %eax, %edx
movl %edx, %eax
sall $2, %eax
addl %edx, %eax
sall $3, %eax
subl %eax, %ecx
movl %ecx, %edx
movl %edx, -4(%rbp)
.L17:
movl -4(%rbp), %eax
sall $2, %eax
movl %eax, %edx
sall $4, %edx
subl %eax, %edx
movl -8(%rbp), %eax
addl %eax, %edx
movq snake@GOTPCREL(%rip), %rax
movl %edx, %edx
movl (%rax,%rdx,4), %eax
movl %eax, %edx
movq snakeLength@GOTPCREL(%rip), %rax
movl (%rax), %eax
cmpl %eax, %edx
jb .L18
movl -4(%rbp), %eax
sall $2, %eax
movl %eax, %edx
sall $4, %edx
subl %eax, %edx
movl -8(%rbp), %eax
addl %eax, %edx
movq snake@GOTPCREL(%rip), %rax
movl %edx, %edx
movl $-1, (%rax,%rdx,4)
leave
.cfi_def_cfa 7, 8
ret
.cfi_endproc
.LFE5:
.size spawnApple, .-spawnApple
.globl tick
.type tick, @function
tick:
.LFB6:
.cfi_startproc
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
movq %rsp, %rbp
.cfi_def_cfa_register 6
subq $16, %rsp
movq currentTick@GOTPCREL(%rip), %rax
movl (%rax), %eax
leal 1(%rax), %edx
movq currentTick@GOTPCREL(%rip), %rax
movl %edx, (%rax)
movl $0, -16(%rbp)
jmp .L20
.L22:
movq snake@GOTPCREL(%rip), %rax
movl -16(%rbp), %edx
movl (%rax,%rdx,4), %eax
movl %eax, -12(%rbp)
cmpl $0, -12(%rbp)
js .L21
cmpl $0, -12(%rbp)
js .L21
movl -12(%rbp), %edx
movq snakeLength@GOTPCREL(%rip), %rax
movl (%rax), %eax
cmpl %eax, %edx
ja .L21
movq snake@GOTPCREL(%rip), %rax
movl -16(%rbp), %edx
movl (%rax,%rdx,4), %eax
leal 1(%rax), %ecx
movq snake@GOTPCREL(%rip), %rax
movl -16(%rbp), %edx
movl %ecx, (%rax,%rdx,4)
.L21:
addl $1, -16(%rbp)
.L20:
cmpl $2399, -16(%rbp)
jbe .L22
call nib_poll_kbd
movl %eax, -8(%rbp)
cmpl $119, -8(%rbp)
jne .L23
movq snakeDirY@GOTPCREL(%rip), %rax
movl (%rax), %eax
cmpl $1, %eax
je .L23
movq snakeDirX@GOTPCREL(%rip), %rax
movl $0, (%rax)
movq snakeDirY@GOTPCREL(%rip), %rax
movl $-1, (%rax)
.L23:
cmpl $115, -8(%rbp)
jne .L24
movq snakeDirY@GOTPCREL(%rip), %rax
movl (%rax), %eax
cmpl $-1, %eax
je .L24
movq snakeDirX@GOTPCREL(%rip), %rax
movl $0, (%rax)
movq snakeDirY@GOTPCREL(%rip), %rax
movl $1, (%rax)
.L24:
cmpl $97, -8(%rbp)
jne .L25
movq snakeDirX@GOTPCREL(%rip), %rax
movl (%rax), %eax
cmpl $1, %eax
je .L25
movq snakeDirX@GOTPCREL(%rip), %rax
movl $-1, (%rax)
movq snakeDirY@GOTPCREL(%rip), %rax
movl $0, (%rax)
.L25:
cmpl $100, -8(%rbp)
jne .L26
movq snakeDirX@GOTPCREL(%rip), %rax
movl (%rax), %eax
cmpl $-1, %eax
je .L26
movq snakeDirX@GOTPCREL(%rip), %rax
movl $1, (%rax)
movq snakeDirY@GOTPCREL(%rip), %rax
movl $0, (%rax)
.L26:
movq snakeX@GOTPCREL(%rip), %rax
movl (%rax), %edx
movq snakeDirX@GOTPCREL(%rip), %rax
movl (%rax), %eax
addl %edx, %eax
leal 60(%rax), %ecx
movl $-2004318071, %edx
movl %ecx, %eax
mull %edx
movl %edx, %eax
shrl $5, %eax
movl %eax, %edx
leal 0(,%rdx,4), %eax
movl %eax, %edx
movl %edx, %eax
sall $4, %eax
subl %edx, %eax
subl %eax, %ecx
movl %ecx, %eax
movq snakeX@GOTPCREL(%rip), %rdx
movl %eax, (%rdx)
movq snakeY@GOTPCREL(%rip), %rax
movl (%rax), %edx
movq snakeDirY@GOTPCREL(%rip), %rax
movl (%rax), %eax
addl %edx, %eax
leal 40(%rax), %ecx
movl $-858993459, %edx
movl %ecx, %eax
mull %edx
shrl $5, %edx
movl %edx, %eax
sall $2, %eax
addl %edx, %eax
sall $3, %eax
subl %eax, %ecx
movl %ecx, %edx
movq snakeY@GOTPCREL(%rip), %rax
movl %edx, (%rax)
movq snakeY@GOTPCREL(%rip), %rax
movl (%rax), %eax
sall $2, %eax
movl %eax, %edx
sall $4, %edx
subl %eax, %edx
movq snakeX@GOTPCREL(%rip), %rax
movl (%rax), %eax
addl %eax, %edx
movq snake@GOTPCREL(%rip), %rax
movl %edx, %edx
movl (%rax,%rdx,4), %eax
movl %eax, -4(%rbp)
movl -4(%rbp), %edx
movq snakeLength@GOTPCREL(%rip), %rax
movl (%rax), %eax
cmpl %eax, %edx
jae .L27
cmpl $0, -4(%rbp)
js .L27
movl startApples(%rip), %eax
movl %eax, %edx
movl startLength(%rip), %eax
movl %edx, %esi
movl %eax, %edi
call start_game
.L27:
cmpl $0, -4(%rbp)
jns .L28
movl $0, %eax
call spawnApple
movq snakeLength@GOTPCREL(%rip), %rax
movl (%rax), %eax
leal 1(%rax), %edx
movq snakeLength@GOTPCREL(%rip), %rax
movl %edx, (%rax)
.L28:
movq snakeY@GOTPCREL(%rip), %rax
movl (%rax), %eax
sall $2, %eax
movl %eax, %edx
sall $4, %edx
subl %eax, %edx
movq snakeX@GOTPCREL(%rip), %rax
movl (%rax), %eax
addl %eax, %edx
movq snake@GOTPCREL(%rip), %rax
movl %edx, %edx
movl $0, (%rax,%rdx,4)
leave
.cfi_def_cfa 7, 8
ret
.cfi_endproc
.LFE6:
.size tick, .-tick
.globl draw
.type draw, @function
draw:
.LFB7:
.cfi_startproc
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
movq %rsp, %rbp
.cfi_def_cfa_register 6
subq $64, %rsp
movq %fs:40, %rax
movq %rax, -8(%rbp)
xorl %eax, %eax
movabsq $23438616898455886, %rax
movq %rax, -16(%rbp)
movl $-1, -52(%rbp)
jmp .L30
.L43:
movl $-1, -48(%rbp)
jmp .L31
.L42:
cmpl $-1, -48(%rbp)
je .L32
cmpl $-1, -52(%rbp)
je .L32
cmpl $60, -48(%rbp)
je .L32
cmpl $40, -52(%rbp)
jne .L33
.L32:
cmpl $-1, -48(%rbp)
je .L34
cmpl $-1, -52(%rbp)
jne .L35
.L34:
movl -48(%rbp), %eax
addl $1, %eax
movl %eax, -24(%rbp)
movl -52(%rbp), %eax
addl $1, %eax
movl %eax, -20(%rbp)
movl -20(%rbp), %ecx
movl -24(%rbp), %eax
movl $35, %edx
movl %ecx, %esi
movl %eax, %edi
call nib_put_scr
nop
jmp .L37
.L35:
movl -48(%rbp), %eax
addl $1, %eax
movl %eax, -32(%rbp)
movl -52(%rbp), %eax
addl $1, %eax
movl %eax, -28(%rbp)
movl -28(%rbp), %ecx
movl -32(%rbp), %eax
movl $35, %edx
movl %ecx, %esi
movl %eax, %edi
call nib_put_scr
jmp .L37
.L33:
movl -52(%rbp), %eax
sall $2, %eax
movl %eax, %edx
sall $4, %edx
subl %eax, %edx
movl -48(%rbp), %eax
addl %eax, %edx
movq snake@GOTPCREL(%rip), %rax
movslq %edx, %rdx
movl (%rax,%rdx,4), %eax
movl %eax, -44(%rbp)
movl -48(%rbp), %eax
addl $1, %eax
movl %eax, -40(%rbp)
movl -52(%rbp), %eax
addl $1, %eax
movl %eax, -36(%rbp)
cmpl $0, -44(%rbp)
js .L38
movl -44(%rbp), %edx
movq snakeLength@GOTPCREL(%rip), %rax
movl (%rax), %eax
cmpl %eax, %edx
jae .L38
movl -48(%rbp), %edx
movq snakeX@GOTPCREL(%rip), %rax
movl (%rax), %eax
cmpl %eax, %edx
jne .L39
movl -52(%rbp), %edx
movq snakeY@GOTPCREL(%rip), %rax
movl (%rax), %eax
cmpl %eax, %edx
jne .L39
movl -36(%rbp), %ecx
movl -40(%rbp), %eax
movl $64, %edx
movl %ecx, %esi
movl %eax, %edi
call nib_put_scr
jmp .L37
.L39:
movl -44(%rbp), %eax
leal -1(%rax), %ecx
movl $-1840700269, %edx
movl %ecx, %eax
imull %edx
leal (%rdx,%rcx), %eax
sarl $2, %eax
movl %eax, %edx
movl %ecx, %eax
sarl $31, %eax
subl %eax, %edx
movl %edx, %eax
movl %eax, %edx
sall $3, %edx
subl %eax, %edx
movl %ecx, %eax
subl %edx, %eax
cltq
movzbl -16(%rbp,%rax), %eax
movsbl %al, %edx
movl -36(%rbp), %ecx
movl -40(%rbp), %eax
movl %ecx, %esi
movl %eax, %edi
call nib_put_scr
jmp .L37
.L38:
cmpl $0, -44(%rbp)
jns .L41
movl -36(%rbp), %ecx
movl -40(%rbp), %eax
movl $111, %edx
movl %ecx, %esi
movl %eax, %edi
call nib_put_scr
jmp .L37
.L41:
movl -36(%rbp), %ecx
movl -40(%rbp), %eax
movl $32, %edx
movl %ecx, %esi
movl %eax, %edi
call nib_put_scr
.L37:
addl $1, -48(%rbp)
.L31:
cmpl $60, -48(%rbp)
jle .L42
addl $1, -52(%rbp)
.L30:
cmpl $40, -52(%rbp)
jle .L43
movq -8(%rbp), %rax
xorq %fs:40, %rax
je .L44
call __stack_chk_fail@PLT
.L44:
leave
.cfi_def_cfa 7, 8
ret
.cfi_endproc
.LFE7:
.size draw, .-draw
.ident "GCC: (GNU) 4.9.2"
.section .note.GNU-stack,"",@progbits