[openfirmware] [commit] r2071 - cpu/x86/pc

repository service svn at openfirmware.info
Wed Dec 8 22:28:37 CET 2010


Author: wmb
Date: Wed Dec  8 22:28:37 2010
New Revision: 2071
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/2071

Log:
biosints.fth - added commentary explaining some complicated stuff.

Modified:
   cpu/x86/pc/biosints.fth

Modified: cpu/x86/pc/biosints.fth
==============================================================================
--- cpu/x86/pc/biosints.fth	Wed Dec  8 22:27:30 2010	(r2070)
+++ cpu/x86/pc/biosints.fth	Wed Dec  8 22:28:37 2010	(r2071)
@@ -1067,8 +1067,11 @@
    16-bit
    ax   push
    h# 20 # ax mov
-   al   h# 20 #  out
+   al   h# 20 #  out  \ Writing h# 20 to IO port 20 is interrupt ack
    ax   pop
+   \ After acking the hardware interrupt, we call the INT 1c vector,
+   \ which NTLDR hooks when it wants to receive timer ticks.  That
+   \ vector will perform the IRET to return from the hardware interrupt.
    cs:  h# 72 #)  push
    cs:  h# 70 #)  push
    far ret
@@ -1081,6 +1084,9 @@
    bounce-timer h# c0  /bounce-timer  move
 
    \ Change INT 20 (the timer tick) to point to the bounce vector with CS=0
+   \ INT 20 is called by the timer hardware via IRQ 0, which vectors to INT 20
+   \ (vector-base0 = 0x20).  The following causes it to execute the "bounce-timer"
+   \ code which has been placed at location 0xc0.
    0 h# 82 w!  h# c0 h# 80 w!  \ CS = 0, IP = h# c0 = INT 30
 ;
 



More information about the openfirmware mailing list