]> wirehaze git hosting - BOS.git/blobdiff - kernel/init/pic.asm

wirehaze git hosting

More cleaning. Now runs error-free. IMG added to repo.
[BOS.git] / kernel / init / pic.asm
index 6076213625e52bb27557fa2e70b3fdf07ddbadbc..9e6bb61baf1e88ea669690a36187bf3eeab312a5 100755 (executable)
 \r
 \r
 ;-------------------------------------------;\r
-;  remap PICs to:  cl = pic1  ch = pic2     ;\r
+;  remap PICs                               ;\r
+;                in:  cl = pic1             ;\r
+;                     ch = pic2             ;\r
 ;-------------------------------------------;\r
 remap_pics:\r
-         push    ax\r
-         push    dx\r
+        push   ax\r
+        push   dx\r
 \r
-         mov     al, 0x11                            ; IWC1\r
-         out     0x20, al\r
-         out     0xA0, al\r
+        mov    al, 0x11                               ; IWC1\r
+        out    0x20, al\r
+        out    0xA0, al\r
 \r
-         mov     al, cl                              ; IWC2\r
-         out     0x21, al\r
-         mov     al, ch\r
-         out     0xA1, al\r
+        mov    al, cl                                 ; IWC2\r
+        out    0x21, al\r
+        mov    al, ch\r
+        out    0xA1, al\r
 \r
-         mov     al, 0x04                            ; IWC3\r
-         out     0x21, al\r
-         mov     al, 0x02\r
-         out     0xA1, al\r
+        mov    al, 0x04                               ; IWC3\r
+        out    0x21, al\r
+        mov    al, 0x02\r
+        out    0xA1, al\r
 \r
-         mov     al, 0x01                            ; IWC4\r
-         out     0x21, al\r
-         out     0xA1, al\r
+        mov    al, 0x01                               ; IWC4\r
+        out    0x21, al\r
+        out    0xA1, al\r
 \r
-         pop     dx\r
-         pop     ax\r
-         ret\r
+        pop    dx\r
+        pop    ax\r
+        ret\r
 \r
 \r
 ;----------------------;\r
 ;  disable all IRQs.   ;\r
 ;----------------------;\r
 disable_irqs:\r
-         push    ax\r
+        push   ax\r
 \r
-         mov     al, 0xFF\r
-         out     0x21, al\r
-         out     0xA1, al\r
+        mov    al, 0xFF\r
+        out    0x21, al\r
+        out    0xA1, al\r
 \r
-         pop     ax\r
-         ret\r
+        pop    ax\r
+        ret\r
 \r
 \r
 ;---------------------;\r
 ;  enable all IRQs.   ;\r
 ;---------------------;\r
 enable_irqs:\r
-         push    ax\r
+        push   ax\r
 \r
-         mov     al, 0x00\r
-         out     0x21, al\r
-         out     0xA1, al\r
+        mov    al, 0x00\r
+        out    0x21, al\r
+        out    0xA1, al\r
 \r
-         pop     ax\r
-         ret\r
+        pop    ax\r
+        ret\r
 \r
 \r
 ;-----------------------------;\r
 ;  enable an IRQ.  cl = irq   ;\r
 ;-----------------------------;\r
 enable_irq:\r
-         push    ax\r
-         push    cx\r
+        push   ax\r
+        push   cx\r
 \r
-         cmp     cl, 8\r
-         jb      .master\r
+        cmp    cl, 8\r
+        jb     .master\r
 \r
-         sub     cl, 8\r
-         mov     ah, 1\r
-         shl     ah, cl\r
-         xor     ah, 0xFF\r
+        sub    cl, 8\r
+        mov    ah, 1\r
+        shl    ah, cl\r
+        xor    ah, 0xFF\r
 \r
-         in      al, 0xA1\r
-         and     al, ah\r
-         out     0xA1, al\r
+        in     al, 0xA1\r
+        and    al, ah\r
+        out    0xA1, al\r
 \r
-         pop     cx\r
-         pop     ax\r
-         ret\r
-  .master:\r
-         mov     ah, 1\r
-         shl     ah, cl\r
-         xor     ah, 0xFF\r
+        pop    cx\r
+        pop    ax\r
+        ret\r
+    .master:\r
+        mov    ah, 1\r
+        shl    ah, cl\r
+        xor    ah, 0xFF\r
 \r
-         in      al, 0x21\r
-         and     al, ah\r
-         out     0x21, al\r
+        in     al, 0x21\r
+        and    al, ah\r
+        out    0x21, al\r
 \r
-         pop     cx\r
-         pop     ax\r
-         ret\r
+        pop    cx\r
+        pop    ax\r
+        ret\r
 \r
 \r
 ;------------------------------;\r
-;  disable an IRQ.  cl = irq   ;\r
+;  disable an IRQ.             ;\r
+;                in: cl = irq  ;\r
 ;------------------------------;\r
 disable_irq:\r
-         push    ax\r
-         push    cx\r
-\r
-         cmp     cl, 8\r
-         jb      .master\r
-\r
-         sub     cl, 8\r
-         mov     ah, 1\r
-         shl     ah, cl\r
-\r
-         in      al, 0xA1\r
-         or      al, ah\r
-         out     0xA1, al\r
-\r
-         pop     cx\r
-         pop     ax\r
-         ret\r
-  .master:\r
-         mov     ah, 1\r
-         shl     ah, cl\r
-\r
-         in      al, 0x21\r
-         or      al, ah\r
-         out     0x21, al\r
-\r
-         pop     cx\r
-         pop     ax\r
-         ret
\ No newline at end of file
+        push   ax\r
+        push   cx\r
+\r
+        cmp    cl, 8\r
+        jb     .master\r
+\r
+        sub    cl, 8\r
+        mov    ah, 1\r
+        shl    ah, cl\r
+\r
+        in     al, 0xA1\r
+        or     al, ah\r
+        out    0xA1, al\r
+\r
+        pop    cx\r
+        pop    ax\r
+        ret\r
+    .master:\r
+        mov    ah, 1\r
+        shl    ah, cl\r
+\r
+        in     al, 0x21\r
+        or     al, ah\r
+        out    0x21, al\r
+\r
+        pop    cx\r
+        pop    ax\r
+        ret
\ No newline at end of file