Lines Matching +full:0 +full:xb8
45 * For now, the known "safe" memory area for relocate is 0x600,
46 * the actual "free" memory is supposed to start from 0x500, leaving
47 * first 0x100 bytes in reserve. As relocate code+data is very small,
48 * it will leave enough space to set up boot blocks to 0:7c00 or load
54 .set SEL_SCODE,0x8
55 .set SEL_SDATA,0x10
56 .set SEL_RCODE,0x18
57 .set SEL_RDATA,0x20
95 andl $~0x80000000,%eax
102 * relocater_data[i], 0 value will stop the loop.
162 movw $0x7008,%bx
163 in $0x21,%al # Save master
165 in $0xa1,%al # Save slave
167 movb $0x11,%al # ICW1 to
168 outb %al,$0x20 # master,
169 outb %al,$0xa0 # slave
171 outb %al,$0x21 # master
173 outb %al,$0xa1 # slave
174 movb $0x4,%al # ICW3 to
175 outb %al,$0x21 # master
176 movb $0x2,%al # ICW3 to
177 outb %al,$0xa1 # slave
178 movb $0x1,%al # ICW4 to
179 outb %al,$0x21 # master,
180 outb %al,$0xa1 # slave
182 outb %al,$0xa1 # IMR
184 outb %al,$0x21 # IMR
190 .byte 0xb8
193 .word 0
197 movw $0xa00, %ax
202 movw $0x2400, %ax
203 int $0x15
210 inb $0x92
211 andb $(~0x03), %al
212 outb $0x92
223 movw $0x8000, %ax
225 addw $0x10, %ax
232 outb %al, $0x80
233 outb %al, $0x80
247 .byte 0xb8
249 relocator_ds: .word 0
253 .byte 0xb8
255 relocator_es: .word 0
259 .byte 0xb8
261 relocator_fs: .word 0
265 .byte 0xb8
267 relocator_gs: .word 0
271 .byte 0xb8
273 relocator_ss: .word 0
277 .byte 0xb8
279 relocator_sp: .word 0
283 .byte 0x66, 0xb8
285 relocator_esi: .long 0
289 .byte 0x66, 0xba
291 relocator_edx: .long 0
294 .byte 0x66, 0xbb
296 relocator_ebx: .long 0
299 .byte 0x66, 0xb8
301 relocator_eax: .long 0
304 .byte 0x66, 0xbd
306 relocator_ebp: .long 0
309 .byte 0xea /* ljmp */
312 .word 0
315 .word 0
320 jump_vector: .long 0
323 gdt: .word 0x0, 0x0 /* null entry */
324 .byte 0x0, 0x0, 0x0, 0x0
325 .word 0xffff, 0x0 /* SEL_SCODE */
326 .byte 0x0, 0x9a, 0xcf, 0x0
327 .word 0xffff, 0x0 /* SEL_SDATA */
328 .byte 0x0, 0x92, 0xcf, 0x0
329 .word 0xffff, 0x0 /* SEL_RCODE */
330 .byte 0x0, 0x9a, 0x0f, 0x0
331 .word 0xffff, 0x0 /* SEL_RDATA */
332 .byte 0x0, 0x92, 0x0f, 0x0
336 gdtaddr: .long 0 /* base */
338 idt: .word 0x3ff
339 .long 0
343 .long 0 /* src */
344 .long 0 /* dest */
345 .long 0 /* size */
346 .long 0 /* src */
347 .long 0 /* dest */
348 .long 0 /* size */
349 .long 0 /* src */
350 .long 0 /* dest */
351 .long 0 /* size */
352 .long 0