Przeglądaj źródła

Add nasm test for paddusb

Amaan Cheval 7 lat temu
rodzic
commit
441c7e14ed
1 zmienionych plików z 45 dodań i 0 usunięć
  1. 45 0
      tests/nasm/paddusb.asm

+ 45 - 0
tests/nasm/paddusb.asm

@@ -0,0 +1,45 @@
+global _start
+
+section .data
+	align 16
+quad1:
+	dq	0x70ad80ad7fffffff
+quad2:
+	dq	0x71ae01ff0f00ffbe
+quad3:
+	dq	0xf100808080f0ff42
+mydword:
+	dd	0xcafebabe
+myaddress:
+	dq	0x00adbeefc0de00ce
+
+MBALIGN     equ  1<<0                   ; align loaded modules on page boundaries
+MEMINFO     equ  1<<1                   ; provide memory map
+FLAGS       equ  0                      ; this is the Multiboot 'flag' field
+MAGIC       equ  0x1BADB002             ; 'magic number' lets bootloader find the header
+CHECKSUM    equ -(MAGIC + FLAGS)        ; checksum of above, to prove we are multiboot
+section .multiboot
+align 4
+    dd MAGIC
+    dd FLAGS
+    dd CHECKSUM
+
+section .text
+
+_start:
+main:
+	movq		mm0, [quad1]
+	movq		mm1, [quad2]
+	movq		mm2, [quad3]
+	movq		mm3, [quad2]
+
+	paddusb	mm0, [quad2]
+	paddusb	mm0, [quad1]
+	paddusb	mm1, mm2
+	paddusb	mm2, [quad1]
+	paddusb	mm3, [quad1]
+
+
+loop:
+	hlt
+	jmp     loop