Lines Matching +full:bootloader +full:- +full:key
38 * Note - this code uses many tricks to save space and fit in one sector.
49 * bootloader) at 0:0x7c00. This code depends on %cs:%ip being 0:0x7c00
57 * These variables control the operation of the bootloader itself,
63 * made of four 16-byte entries each containing:
128 .set B0_OFF,(B0_BASE-0x200) # Offset of boot0 data
132 .set KEY_ENTER,0x1c # Enter key scan code
133 .set KEY_F1,0x3b # F1 key scan code
134 .set KEY_1,0x02 # #1 key scan code
154 .set _TICKS, (PRT_OFF - 0x200 - 2) # Timeout ticks
157 .set TLEN, (desc_ofs - bootable_ids) # size of bootable ids
197 incb -0xe(%di) # Set the S field to 1
199 jmp main-LOAD+ORIGIN # Jump to relocated code
259 read_entry: movb %ch,-0x4(%bx) # Zero active flag (ch == 0)
268 * match; the corresponding offset to the description is $(TLEN-1)
278 * The byte at $(TLEN-1)(%di) contains the offset of the description
281 addw $(TLEN-1), %di # Adjust
296 subb $0x80-0x1,%al # Does next
327 callw putkey # key
388 je use_default # enter -> default
390 * Check if the key is acceptable, and loop back if not.
391 * The console (non-SIO) code looks at scancodes and accepts
398 #else /* console mode -- use scancodes */
403 subb $(KEY_1 - KEY_F1),%al # Less #1 scan code
453 * If not asked to do a write-back (flags 0x40) don't do one.
467 * Remember to un-ascii it. Hey 0x80 is already set, cool!
506 callw putkey # key
544 /* One-sector disk I/O routine */
611 * which is used for non-matching names.
613 .byte os_linux-. # 131, Linux
614 .byte os_freebsd-. # 165, FreeBSD
615 .byte os_bsd-. # 166, OpenBSD
616 .byte os_bsd-. # 169, NetBSD
617 .byte os_dos-. # 6, FAT16 >= 32M
618 .byte os_win-. # 7, NTFS
619 .byte os_win-. # 11, FAT32
622 .byte os_ext-. # 5, DOS Ext
625 .byte os_dos-. # 1, FAT12 DOS
626 .byte os_dos-. # 4, FAT16 <32M
628 .byte os_misc-. # Unknown