summaryrefslogtreecommitdiffstats
path: root/qemu/roms/seabios/src/bregs.h
diff options
context:
space:
mode:
Diffstat (limited to 'qemu/roms/seabios/src/bregs.h')
-rw-r--r--qemu/roms/seabios/src/bregs.h80
1 files changed, 0 insertions, 80 deletions
diff --git a/qemu/roms/seabios/src/bregs.h b/qemu/roms/seabios/src/bregs.h
deleted file mode 100644
index d40526345..000000000
--- a/qemu/roms/seabios/src/bregs.h
+++ /dev/null
@@ -1,80 +0,0 @@
-// Structure layout of cpu registers that the bios uses.
-//
-// Copyright (C) 2008 Kevin O'Connor <kevin@koconnor.net>
-//
-// This file may be distributed under the terms of the GNU LGPLv3 license.
-
-#ifndef __BREGS_H
-#define __BREGS_H
-
-#include "types.h" // u16
-#include "x86.h" // F_CF
-
-
-/****************************************************************
- * Registers saved/restored in romlayout.S
- ****************************************************************/
-
-#define UREG(ER, R, RH, RL) union { u32 ER; struct { u16 R; u16 R ## _hi; }; struct { u8 RL; u8 RH; u8 R ## _hilo; u8 R ## _hihi; }; }
-
-// Layout of registers passed in to irq handlers. Note that this
-// layout corresponds to code in romlayout.S - don't change it here
-// without also updating the assembler code.
-struct bregs {
- u16 ds;
- u16 es;
- UREG(edi, di, di8u, di8l);
- UREG(esi, si, si8u, si8l);
- UREG(ebp, bp, bp8u, bp8l);
- UREG(ebx, bx, bh, bl);
- UREG(edx, dx, dh, dl);
- UREG(ecx, cx, ch, cl);
- UREG(eax, ax, ah, al);
- struct segoff_s code;
- u16 flags;
-} PACKED;
-
-
-/****************************************************************
- * Helper functions
- ****************************************************************/
-
-static inline void
-set_cf(struct bregs *regs, int cond)
-{
- if (cond)
- regs->flags |= F_CF;
- else
- regs->flags &= ~F_CF;
-}
-
-// Frequently used return codes
-#define RET_EUNSUPPORTED 0x86
-
-static inline void
-set_success(struct bregs *regs)
-{
- set_cf(regs, 0);
-}
-
-static inline void
-set_code_success(struct bregs *regs)
-{
- regs->ah = 0;
- set_cf(regs, 0);
-}
-
-static inline void
-set_invalid_silent(struct bregs *regs)
-{
- set_cf(regs, 1);
-}
-
-static inline void
-set_code_invalid_silent(struct bregs *regs, u8 code)
-{
- regs->ah = code;
- set_cf(regs, 1);
-}
-
-#endif // bregs.h