diff options
author | Kevin O'Connor <kevin@koconnor.net> | 2009-01-17 18:49:20 -0500 |
---|---|---|
committer | Kevin O'Connor <kevin@koconnor.net> | 2009-01-17 18:49:20 -0500 |
commit | 308537650feeabcd953283e828cf7f51495c11c5 (patch) | |
tree | c4cfb8b1e44679ac41abe68e25071a549a41c329 /src/biosvar.h | |
parent | 095e89bc0b9238ae88383484ca006a3e7af873ad (diff) | |
download | seabios-hppa-308537650feeabcd953283e828cf7f51495c11c5.zip seabios-hppa-308537650feeabcd953283e828cf7f51495c11c5.tar.gz seabios-hppa-308537650feeabcd953283e828cf7f51495c11c5.tar.bz2 |
Move variables from assembler to C code.
Define macro VAR16FIXED for declaring a variable at a fixed location.
Introduce new file src/misc.c, and move non int15 calls from system.c
to it.
Implement all fixed location variables in C code.
Move IDT/GDT defs to misc.c. Remove unused gdt entry 1.
Diffstat (limited to 'src/biosvar.h')
-rw-r--r-- | src/biosvar.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/biosvar.h b/src/biosvar.h index 5105696..5dc113f 100644 --- a/src/biosvar.h +++ b/src/biosvar.h @@ -15,18 +15,18 @@ * Interupt vector table ****************************************************************/ -struct ivec { +struct rmode_IVT { union { struct { u16 offset; u16 seg; }; u32 segoff; - }; + } ivec[256]; }; #define SET_IVT(vector, seg, off) \ - SET_FARVAR(SEG_IVT, ((struct ivec *)0)[vector].segoff, ((seg) << 16) | (off)) + SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector].segoff, ((seg) << 16) | (off)) /**************************************************************** @@ -284,6 +284,6 @@ struct bios_config_table_s { u8 feature1, feature2, feature3, feature4, feature5; } PACKED; -extern struct bios_config_table_s BIOS_CONFIG_TABLE; +extern struct bios_config_table_s BIOS_CONFIG_TABLE __aligned(1); #endif // __BIOSVAR_H |