Procházet zdrojové kódy

fix(a20): check a20 status without breaking code

greatbridf před 2 roky
rodič
revize
e548724797
1 změnil soubory, kde provedl 12 přidání a 1 odebrání
  1. 12 1
      src/asm/a20.s

+ 12 - 1
src/asm/a20.s

@@ -7,9 +7,20 @@ check_a20_on:
     pushal
     pushal
     movl $0x112345, %edi
     movl $0x112345, %edi
     movl $0x012345, %esi
     movl $0x012345, %esi
+
+    movl (%esi), %eax
+    movl (%edi), %ecx
+
     movl %esi, (%esi)
     movl %esi, (%esi)
     movl %edi, (%edi)
     movl %edi, (%edi)
-    cmpsd
+    cmpsl
+
+    subl $4, %esi
+    subl $4, %edi
+
+    movl %eax, (%esi)
+    movl %ecx, (%edi)
+
     popal
     popal
     jne a20_on
     jne a20_on
     movl $0, %eax
     movl $0, %eax