harddisk.s

来自「阿基米德操作系统的源代码」· S 代码 · 共 56 行

S
56
字号
.globl hd_interrupt
.align 4hd_interrupt:
	cld	pushl	%eax
	pushl	%ebx	pushl	%ecx	pushl	%edx
	pushl	%esi
	pushl	%edi
	pushl	%ebp
	push	%ds	push	%es	push	%fs
	push	%gs
	movl	$0x10,%eax	mov		%ax,%ds	mov		%ax,%es
	mov		%ax,%fs


	movl	$do_hd,%eax
	call	*%eax		

	movb	$0x20,%al	outb	%al,$0xa0
	movb	$0x0b,%al
	outb	%al,$0xa0
	inb		$0xa0,%al
	cmpb	$0x00,%al
	jne		hd_interrupt_0

	movb	$0x20,%al	outb	%al,$0x20

hd_interrupt_0:
	pop		%gs	pop		%fs	pop		%es	pop		%ds

	popl	%ebp
	popl	%edi
	popl	%esi	popl	%edx	popl	%ecx
	popl	%ebx	popl	%eax
	iret

⌨️ 快捷键说明

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