diff options
Diffstat (limited to 'newlib/libc/sys/go32/tell.s')
-rw-r--r-- | newlib/libc/sys/go32/tell.s | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/newlib/libc/sys/go32/tell.s b/newlib/libc/sys/go32/tell.s new file mode 100644 index 0000000..5427cbe --- /dev/null +++ b/newlib/libc/sys/go32/tell.s @@ -0,0 +1,33 @@ +# /* This is file TELL.S */ +# /* +# ** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954 +# ** +# ** This file is distributed under the terms listed in the document +# ** "copying.dj", available from DJ Delorie at the address above. +# ** A copy of "copying.dj" should accompany this file; if not, a copy +# ** should be available from where this file was obtained. This file +# ** may not be distributed without a verbatim copy of "copying.dj". +# ** +# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied +# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# */ + + .text + .globl _tell +_tell: + pushl %ebx + pushl %esi + pushl %edi + movl 16(%esp),%ebx + movl $0,%ecx + movl $0,%edx + movw $0x4201,%ax + int $0x21 + popl %edi + popl %esi + popl %ebx + jb syscall_error + shll $16,%edx + andl $0xffff,%eax + orl %edx,%eax + ret |