diff options
| author | Michael Brown | 2007-07-10 17:57:55 +0200 |
|---|---|---|
| committer | Michael Brown | 2007-07-10 17:57:55 +0200 |
| commit | fb16f9069953bb0d9fd10dfde48d40f8918de86f (patch) | |
| tree | 795ba050088b9c92b123b19be08fd2cd3a245f3a /src/arch/i386 | |
| parent | May be required in some disconnect scenarios (diff) | |
| download | ipxe-fb16f9069953bb0d9fd10dfde48d40f8918de86f.tar.gz ipxe-fb16f9069953bb0d9fd10dfde48d40f8918de86f.tar.xz ipxe-fb16f9069953bb0d9fd10dfde48d40f8918de86f.zip | |
Dump first 64 bytes of chained ISR when debugging is enabled.
Diffstat (limited to 'src/arch/i386')
| -rw-r--r-- | src/arch/i386/interface/pcbios/biosint.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/arch/i386/interface/pcbios/biosint.c b/src/arch/i386/interface/pcbios/biosint.c index 5a48f0479..8ef2d7ab2 100644 --- a/src/arch/i386/interface/pcbios/biosint.c +++ b/src/arch/i386/interface/pcbios/biosint.c @@ -51,6 +51,12 @@ void hook_bios_interrupt ( unsigned int interrupt, unsigned int handler, sizeof ( *chain_vector ) ); DBG ( "...chaining to %04x:%04x\n", chain_vector->segment, chain_vector->offset ); + if ( DBG_LOG ) { + char code[64]; + copy_from_real ( code, chain_vector->segment, + chain_vector->offset, sizeof ( code ) ); + DBG_HDA ( *chain_vector, code, sizeof ( code ) ); + } copy_to_real ( 0, ( interrupt * 4 ), &vector, sizeof ( vector ) ); hooked_bios_interrupts++; |
