mirror of
				https://git.proxmox.com/git/grub2
				synced 2025-10-31 06:40:12 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			50 lines
		
	
	
		
			605 B
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			605 B
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
| 
 | |
| 	.text
 | |
| 	.globl _start
 | |
| _start:
 | |
| base:	
 | |
| 	.code16
 | |
| 	jmp cont
 | |
| 
 | |
| serialmsg:	
 | |
| 1:	
 | |
| 	movb 0(%si), %bl
 | |
| 	testb %bl, %bl
 | |
| 	jz 1f
 | |
| 	movw $0x3fd, %dx
 | |
| 2:	
 | |
| 	inb %dx, %al
 | |
| 	testb $0x20, %al
 | |
| 	jz   2b
 | |
| 
 | |
| 	movw $0x3f8, %dx
 | |
| 	movb %bl, %al
 | |
| 	outb %al, %dx
 | |
| 	incw %si
 | |
| 	jmp 1b
 | |
| 1:
 | |
| 	ret
 | |
| 
 | |
| cont:
 | |
| #ifdef TARGET_NTLDR
 | |
| 	movw $0x2000, %ax
 | |
| #elif defined (TARGET_CHAINLOADER)
 | |
| 	xorw %ax, %ax
 | |
| #else
 | |
| #error unsupported target
 | |
| #endif
 | |
| 	movw %ax, %ds
 | |
| 	lea message, %si
 | |
| 	call serialmsg
 | |
| #include "qemu-shutdown-x86.S"
 | |
| 
 | |
| 1:
 | |
| 	hlt
 | |
| 	jmp 1b
 | |
| 
 | |
| message:
 | |
| 	.ascii "Boot Test Passed Successfully\n" SUCCESSFUL_BOOT_STRING "\n"
 | |
| 	.byte 0
 | |
| 
 | |
| 	. = base + 510
 | |
| 	.short 0xaa55
 | 
