⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rdos.s

📁 Newlib 嵌入式 C库 标准实现代码
💻 S
📖 第 1 页 / 共 5 页
字号:
    .global RdosDisableCts    RdosDisableCts:	pushl %ebp	movl %esp,%ebp	pushl %ebx	movw 8(%ebp),%bx	UserGate disable_cts_nr	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosEnableAutoRts##   Purpose....: Enable auto RTS signal generation for RS485##   Parameters.: Com handle###########################################################################*/    .global RdosEnableAutoRts    RdosEnableAutoRts:	pushl %ebp	movl %esp,%ebp	pushl %ebx	movw 8(%ebp),%bx	UserGate enable_auto_rts_nr	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosDisableAutoRts##   Purpose....: Disable auto RTS signal generation for RS485##   Parameters.: Com handle###########################################################################*/    .global RdosDisableAutoRts    RdosDisableAutoRts:	pushl %ebp	movl %esp,%ebp	pushl %ebx	movw 8(%ebp),%bx	UserGate disable_auto_rts_nr	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosSetDtr##   Purpose....: Set DTR active##   Parameters.: Com handle###########################################################################*/    .global RdosSetDtr    RdosSetDtr:	pushl %ebp	movl %esp,%ebp	pushl %ebx	movw 8(%ebp),%bx	UserGate set_dtr_nr	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosResetDtr##   Purpose....: Set DTR inactive##   Parameters.: Com handle###########################################################################*/    .global RdosResetDtr    RdosResetDtr:	pushl %ebp	movl %esp,%ebp	pushl %ebx	movw 8(%ebp),%bx	UserGate reset_dtr_nr	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosSetRts##   Purpose....: Set RTS active##   Parameters.: Com handle###########################################################################*/    .global RdosSetRts    RdosSetRts:	pushl %ebp	movl %esp,%ebp	pushl %ebx	movw 8(%ebp),%bx	UserGate set_rts_nr	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosResetRts##   Purpose....: Set RTS inactive##   Parameters.: Com handle###########################################################################*/    .global RdosResetRts    RdosResetRts:	pushl %ebp	movl %esp,%ebp	pushl %ebx	movw 8(%ebp),%bx	UserGate reset_rts_nr	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosGetReceiveBufferSpace##   Purpose....: Get receive buffer free space##   Parameters.: Com handle##   Returns....: Free bytes###########################################################################*/    .global RdosGetReceiveBufferSpace    RdosGetReceiveBufferSpace:	pushl %ebp	movl %esp,%ebp	pushl %ebx	movw 8(%ebp),%bx	UserGate get_com_receive_space_nr	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosGetSendBufferSpace##   Purpose....: Get send buffer free space##   Parameters.: Com handle##   Returns....: Free bytes###########################################################################*/    .global RdosGetSendBufferSpace    RdosGetSendBufferSpace:	pushl %ebp	movl %esp,%ebp	pushl %ebx	movw 8(%ebp),%bx	UserGate get_com_send_space_nr	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosOpenFile##   Purpose....: Open file##   Parameters.: Filename#                Access##    Returns...: File handle###########################################################################*/    .global RdosOpenFile    RdosOpenFile:	pushl %ebp	movl %esp,%ebp	pushl %ebx	pushl %ecx	pushl %edi	movl 8(%ebp),%edi	movb 12(%ebp),%cl	UserGate open_file_nr	jc OpenFileFailed	movzx %bx,%eax	jmp OpenFileDoneOpenFileFailed:	xorl %eax,%eaxOpenFileDone:	popl %edi	popl %ecx	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosCreateFile##   Purpose....: Create file##   Parameters.: Filename#                Attribute##    Returns...: File handle###########################################################################*/    .global RdosCreateFile    RdosCreateFile:	pushl %ebp	movl %esp,%ebp	pushl %ebx	pushl %ecx	pushl %edi	movl 8(%ebp),%edi	movw 12(%ebp),%cx	UserGate create_file_nr	jc CreateFileFailed	movzx %bx,%eax	jmp CreateFileDoneCreateFileFailed:	xorl %eax,%eaxCreateFileDone:	popl %edi	popl %ecx	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosCloseFile##   Purpose....: Close file##   Parameters.: File handle###########################################################################*/    .global RdosCloseFile    RdosCloseFile:	pushl %ebp	movl %esp,%ebp	pushl %ebx	movw 8(%ebp),%bx	UserGate close_file_nr	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosIsDevice##   Purpose....: Check if file is device##   Parameters.: TRUE if device###########################################################################*/    .global RdosIsDevice    RdosIsDevice:	pushl %ebp	movl %esp,%ebp	pushl %ebx	movw 8(%ebp),%bx	UserGate get_ioctl_data_nr	testw $0x8000,%dx	jz ridFail	movl $1,%eax	jmp ridDoneridFail:	xorl %eax,%eaxridDone:	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosDuplFile##   Purpose....: Duplicate file handle##   Parameters.: File handle##   Returns....: File handle###########################################################################*/    .global RdosDuplFile    RdosDuplFile:	pushl %ebp	movl %esp,%ebp	pushl %ebx	movw 8(%ebp),%bx	UserGate dupl_file_nr	jc DuplFileFailed		movzx %bx,%eax	jmp DuplFileDoneDuplFileFailed:	xorl %eax,%eaxDuplFileDone:	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosGetFileSize##   Purpose....: Get file size##   Parameters.: File handle##   Returns....: Size###########################################################################*/    .global RdosGetFileSize    RdosGetFileSize:	pushl %ebp	movl %esp,%ebp	pushl %ebx	movw 8(%ebp),%bx	UserGate get_file_size_nr	jnc GetFileSizeDoneGetFileSizeFail:	xorl %eax,%eaxGetFileSizeDone:	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosSetFileSize##   Purpose....: Set file size##   Parameters.: File handle#                Size###########################################################################*/    .global RdosSetFileSize    RdosSetFileSize:	pushl %ebp	movl %esp,%ebp	pushl %eax	pushl %ebx	movw 8(%ebp),%bx	movl 12(%ebp),%eax	UserGate set_file_size_nr	popl %ebx	popl %eax	leave	ret					    					    /*############################################################################   Name       : RdosGetFilePos##   Purpose....: Get file position##   Parameters.: File handle##   Returns....: Position###########################################################################*/    .global RdosGetFilePos    RdosGetFilePos:	pushl %ebp	movl %esp,%ebp	pushl %ebx	movw 8(%ebp),%bx	UserGate get_file_pos_nr	jnc GetFilePosDoneGetFilePosFail:	xorl %eax,%eaxGetFilePosDone:	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosSetFilePos##   Purpose....: Set file position##   Parameters.: File handle#                Position###########################################################################*/    .global RdosSetFilePos    RdosSetFilePos:	pushl %ebp	movl %esp,%ebp	pushl %eax	pushl %ebx	movw 8(%ebp),%bx	movl 12(%ebp),%eax	UserGate set_file_pos_nr	popl %ebx	popl %eax	leave	ret					    					    /*############################################################################   Name       : RdosGetFileTime##   Purpose....: Get file time & date##   Parameters.: File handle#                &MSB, &LSB###########################################################################*/    .global RdosGetFileTime    RdosGetFileTime:	pushl %ebp	movl %esp,%ebp	pushl %ebx	pushl %edi	movw 8(%ebp),%bx	UserGate get_file_time_nr	jc GetFileTimeDone	movl 12(%ebp),%edi	movl %edx,(%edi)	movl 16(%ebp),%edi	movl %eax,(%edi)GetFileTimeDone:	popl %edi	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosSetFileTime##   Purpose....: Set file time & date##   Parameters.: File handle#                MSB, LSB###########################################################################*/    .global RdosSetFileTime    RdosSetFileTime:	pushl %ebp	movl %esp,%ebp	pushl %eax	pushl %ebx	pushl %edx	movw 8(%ebp),%bx	movl 12(%ebp),%edx	movl 16(%ebp),%eax	UserGate set_file_time_nr	popl %edx	popl %ebx	popl %eax	leave	ret					    					    /*############################################################################   Name       : RdosReadFile##   Purpose....: Read from file##   Parameters.: File handle#                buffer#                count##   Returns....: Read count###########################################################################*/    .global RdosReadFile    RdosReadFile:	pushl %ebp	movl %esp,%ebp	pushl %ebx	pushl %ecx	pushl %edi	movw 8(%ebp),%bx	movl 12(%ebp),%edi	movl 16(%ebp),%ecx	UserGate read_file_nr	popl %edi	popl %ecx	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosWriteFile##   Purpose....: Write to file##   Parameters.: File handle#                buffer#                count##   Returns....: Written count###########################################################################*/    .global RdosWriteFile    RdosWriteFile:	pushl %ebp	movl %esp,%ebp	pushl %ebx	pushl %ecx	pushl %edi	movw 8(%ebp),%bx	movl 12(%ebp),%edi	movl 16(%ebp),%ecx	UserGate write_file_nr	popl %edi	popl %ecx	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosCreateMapping##   Purpose....: Create file mapping##   Parameters.: Size##    Returns...: Filemap handle###########################################################################*/    .global RdosCreateMapping    RdosCreateMapping:	pushl %ebp	movl %esp,%ebp	pushl %ebx	movl 8(%ebp),%eax	UserGate create_mapping_nr	movzx %bx,%eax	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosCreateNamedMapping##   Purpose....: Create named file mapping##   Parameters.: Name#                Size##    Returns...: Filemap handle###########################################################################*/    .global RdosCreateNamedMapping    RdosCreateNamedMapping:	pushl %ebp	movl %esp,%ebp	pushl %ebx	pushl %edi	movl 8(%ebp),%edi	movl 12(%ebp),%eax	UserGate create_named_mapping_nr	movzx %bx,%eax	popl %edi	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosCreateNamedFileMapping##   Purpose....: Create file named file mapping##   Parameters.: Name#                Size#                File handle##    Returns...: Filemap handle###########################################################################*/    .global RdosCreateNamedFileMapping    RdosCreateNamedFileMapping:	pushl %ebp	movl %esp,%ebp	pushl %ebx	pushl %edi	movl 8(%ebp),%edi	movl 12(%ebp),%eax	movw 16(%ebp),%bx	UserGate create_named_file_mapping_nr	movzx %bx,%eax	popl %edi	popl %ebx	leave	ret					    					    /*############################################################################   Name       : RdosOpenNamedMapping##   Purpose....: Open named file mapping##   Parameters.: Name##    Returns...: Filemap handle###########################################################################*/    .global RdosOpenNamedMapping    RdosOpenName

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -