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

📄 grub-0.97-patch1-startups

📁 grub for dos ,people can use it in dos for calling linux
💻 97-PATCH1-STARTUPS
📖 第 1 页 / 共 5 页
字号:
+	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	movl	$ABS(msg_too_many_files), %ecx+	jmp	4f	/* error */++3:++	/* not yet, this is the first filename */++	movl	%ecx, %eax		# save ECX to EAX+	//movl	%ecx, ABS(filename)	# save ECX to filename+	jmp	1b			# continue++2:++	/* it is an option */++	/* check --no-backup-mbr */++	movl	$16, %ecx+	movl	$ABS(option_no_backup_mbr), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$1, ABS(backup_mbr)+	movl	$ABS(msg_option_backup_mbr), %ecx+	jnz	4f	/* error */+	movl	$0, ABS(backup_mbr)+	jmp	1b++3:+	/* check --force-backup-mbr */++	movl	$19, %ecx+	movl	$ABS(option_force_backup_mbr), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$1, ABS(backup_mbr)+	movl	$ABS(msg_option_backup_mbr), %ecx+	jnz	4f	/* error */+	movl	$2, ABS(backup_mbr)+	jmp	1b++3:++	/* check --mbr-enable-floppy */++	movl	$20, %ecx+	movl	$ABS(option_mbr_enable_floppy), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0, ABS(mbr_floppy)+	movl	$ABS(msg_option_mbr_floppy), %ecx+	jnz	4f	/* error */+	movl	$2, ABS(mbr_floppy)+	jmp	1b++3:++	/* check --mbr-disable-floppy */++	movl	$21, %ecx+	movl	$ABS(option_mbr_disable_floppy), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0, ABS(mbr_floppy)+	movl	$ABS(msg_option_mbr_floppy), %ecx+	jnz	4f	/* error */+	movl	$1, ABS(mbr_floppy)+	jmp	1b++3:++	/* check --mbr-enable-osbr */++	movl	$18, %ecx+	movl	$ABS(option_mbr_enable_osbr), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0, ABS(mbr_osbr)+	movl	$ABS(msg_option_mbr_osbr), %ecx+	jnz	4f	/* error */+	movl	$2, ABS(mbr_osbr)+	jmp	1b++3:++	/* check --mbr-disable-osbr */++	movl	$19, %ecx+	movl	$ABS(option_mbr_disable_osbr), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0, ABS(mbr_osbr)+	movl	$ABS(msg_option_mbr_osbr), %ecx+	jnz	4f	/* error */+	movl	$1, ABS(mbr_osbr)+	jmp	1b++3:++	/* check --boot-prevmbr-first */++	movl	$21, %ecx+	movl	$ABS(option_boot_prevmbr_first), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0, ABS(boot_prevmbr)+	movl	$ABS(msg_option_boot_prevmbr), %ecx+	jnz	4f	/* error */+	movl	$1, ABS(boot_prevmbr)+	jmp	1b++3:++	/* check --boot-prevmbr-last */++	movl	$20, %ecx+	movl	$ABS(option_boot_prevmbr_last), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0, ABS(boot_prevmbr)+	movl	$ABS(msg_option_boot_prevmbr), %ecx+	jnz	4f	/* error */+	movl	$2, ABS(boot_prevmbr)+	jmp	1b++3:++	/* check --preferred-drive= */++	movl	$18, %ecx+	movl	$ABS(option_preferred_drive), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0xff, ABS(preferred_drive)+	movl	$ABS(msg_option_preferred_drive), %ecx+	jnz	4f	/* error */++	movl	$0xfe, %ebx+	call	7f	/* parse_number */+	movl	%ebx, %edi	# save EBX to EDI+	movl	$0, %ebx	# invalid file descriptor for CLOSE below+	movl	$ABS(msg_invalid_number), %ecx+	jc	4f	/* error */+	movl	%edi, ABS(preferred_drive)+	jmp	1b++3:++	/* check --preferred-partition= */++	movl	$22, %ecx+	movl	$ABS(option_preferred_partition), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0xff, ABS(preferred_partition)+	movl	$ABS(msg_option_preferred_partition), %ecx+	jnz	4f	/* error */++	movl	$0xfe, %ebx+	call	7f	/* parse_number */+	movl	%ebx, %edi	# save EBX to EDI+	movl	$0, %ebx	# invalid file descriptor for CLOSE below+	movl	$ABS(msg_invalid_number), %ecx+	jc	4f	/* error */+	movl	%edi, ABS(preferred_partition)+	jmp	1b++3:++	/* check --time-out= */++	movl	$11, %ecx+	movl	$ABS(option_time_out), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0xffffff05, ABS(time_out)+	movl	$ABS(msg_option_time_out), %ecx+	jnz	4f	/* error */++	movl	$0xff, %ebx+	call	7f	/* parse_number */+	movl	%ebx, %edi	# save EBX to EDI+	movl	$0, %ebx	# invalid file descriptor for CLOSE below+	movl	$ABS(msg_invalid_number), %ecx+	jc	4f	/* error */+	movl	%edi, ABS(time_out)+	jmp	1b++3:++	/* check --hot-key= */++	movl	$10, %ecx+	movl	$ABS(option_hot_key), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0xffff3920, ABS(hot_key)+	movl	$ABS(msg_option_hot_key), %ecx+	jnz	4f	/* error */++	movl	$0xffff, %ebx+	call	7f	/* parse_number */+	movl	%ebx, %edi	# save EBX to EDI+	movl	$0, %ebx	# invalid file descriptor for CLOSE below+	movl	$ABS(msg_invalid_number), %ecx+	jc	4f	/* error */+	movl	%edi, ABS(hot_key)+	jmp	1b++3:++	/* check --install-partition= */++	movl	$20, %ecx+	movl	$ABS(option_install_partition), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0xffffffff, ABS(install_partition)+	movl	$ABS(msg_option_install_partition), %ecx+	jnz	4f	/* error */++	movl	$0xffff, %ebx+	call	7f	/* parse_number */+	movl	%ebx, %edi	# save EBX to EDI+	movl	$0, %ebx	# invalid file descriptor for CLOSE below+	movl	$ABS(msg_invalid_number), %ecx+	jc	4f	/* error */+	movl	%edi, ABS(install_partition)+	jmp	1b++3:++	/* check --sectors-per-track= */++	movl	$20, %ecx+	movl	$ABS(option_sectors_per_track), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0xffffff3f, ABS(sectors_per_track)+	movl	$ABS(msg_option_sectors_per_track), %ecx+	jnz	4f	/* error */++	movl	$0x3f, %ebx	# maximum is 63+	call	7f	/* parse_number */+	movl	%ebx, %edi	# save EBX to EDI+	movl	$0, %ebx	# invalid file descriptor for CLOSE below+	movl	$ABS(msg_invalid_number), %ecx+	jc	4f	/* error */+	cmpl	$0, %edi+	je	4f	/* error */+	movl	%edi, ABS(sectors_per_track)+	jmp	1b++3:++	/* check --heads= */++	movl	$8, %ecx+	movl	$ABS(option_heads), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0xffff00ff, ABS(heads)+	movl	$ABS(msg_option_heads), %ecx+	jnz	4f	/* error */++	movl	$0x100, %ebx	# maximum is 256+	call	7f	/* parse_number */+	movl	%ebx, %edi	# save EBX to EDI+	movl	$0, %ebx	# invalid file descriptor for CLOSE below+	movl	$ABS(msg_invalid_number), %ecx+	jc	4f	/* error */+	cmpl	$0, %edi+	je	4f	/* error */+	movl	%edi, ABS(heads)+	jmp	1b++3:++	/* check --start-sector= */++	movl	$15, %ecx+	movl	$ABS(option_start_sector), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0xffffffff, ABS(start_sector)+	movl	$ABS(msg_option_start_sector), %ecx+	jnz	4f	/* error */++	movl	$0xfffffffe, %ebx+	call	7f	/* parse_number */+	movl	%ebx, %edi	# save EBX to EDI+	movl	$0, %ebx	# invalid file descriptor for CLOSE below+	movl	$ABS(msg_invalid_number), %ecx+	jc	4f	/* error */+	movl	%edi, ABS(start_sector)+	jmp	1b++3:++	/* check --total-sectors= */++	movl	$16, %ecx+	movl	$ABS(option_total_sectors), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0, ABS(total_sectors)+	movl	$ABS(msg_option_total_sectors), %ecx+	jnz	4f	/* error */++	movl	$0xffffffff, %ebx+	call	7f	/* parse_number */+	movl	%ebx, %edi	# save EBX to EDI+	movl	$0, %ebx	# invalid file descriptor for CLOSE below+	movl	$ABS(msg_invalid_number), %ecx+	jc	4f	/* error */+	cmpl	$0, %edi+	je	4f	/* error */+	movl	%edi, ABS(total_sectors)+	jmp	1b++3:++	/* check --floppy= */++	movl	$9, %ecx+	movl	$ABS(option_floppy_partition), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0xffffffff, ABS(floppy)+	movl	$ABS(msg_option_floppy), %ecx+	jnz	4f	/* error */++	movl	$0xfe, %ebx+	call	7f	/* parse_number */+	movl	%ebx, %edi	# save EBX to EDI+	movl	$0, %ebx	# invalid file descriptor for CLOSE below+	movl	$ABS(msg_invalid_number), %ecx+	jc	4f	/* error */+	movl	%edi, ABS(floppy)+	jmp	1b++3:++	/* check --read-only */++	movl	$12, %ecx+	movl	$ABS(option_read_only), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$2, ABS(read_only)+	movl	$ABS(msg_option_read_only), %ecx+	jnz	4f	/* error */++	movl	$0, ABS(read_only)+	jmp	1b++3:++	/* check --floppy */++	movl	$9, %ecx+	movl	$ABS(option_floppy), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0xffffffff, ABS(floppy)+	movl	$ABS(msg_option_floppy), %ecx+	jnz	4f	/* error */++	movl	$0xff, ABS(floppy)+	jmp	1b++3:++	/* check --lba */++	movl	$6, %ecx+	movl	$ABS(option_lba), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0xffffffff, ABS(lba)+	movl	$ABS(msg_option_lba), %ecx+	jnz	4f	/* error */++	movl	$1, ABS(lba)+	jmp	1b++3:++	/* check --chs */++	movl	$6, %ecx+	movl	$ABS(option_chs), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0xffffffff, ABS(lba)+	movl	$ABS(msg_option_lba), %ecx+	jnz	4f	/* error */++	movl	$0, ABS(lba)+	jmp	1b++3:++	/* check --fat12 */++	movl	$8, %ecx+	movl	$ABS(option_fat12), %esi+	movl	%ebx, %edi++	cld+	repz cmpsb++	jnz	3f++	xorl	%ebx, %ebx	# invalid file descriptor for CLOSE below+	+	cmpl	$0xfffffff7, ABS(fstypes)+	jnz	2f+	movl	$0, ABS(fstypes)+2:+	orb	$1, ABS(fstypes)+	jmp	1b++3:++	/* check --fat16 */

⌨️ 快捷键说明

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