From 76f12e45a39fd063962463fc74fee6b74ddf7c20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Markus=20Fr=C3=B6schle?= Date: Wed, 18 Feb 2015 15:59:52 +0000 Subject: [PATCH] compiles again, pci bios emulator not tested --- BaS_gcc/bas.lk.in | 1 + BaS_gcc/x86emu/x86biosemu.c | 11 ++++++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/BaS_gcc/bas.lk.in b/BaS_gcc/bas.lk.in index c7675a4..2b90f33 100644 --- a/BaS_gcc/bas.lk.in +++ b/BaS_gcc/bas.lk.in @@ -99,6 +99,7 @@ SECTIONS OBJDIR/x86emu.o(.text) OBJDIR/x86emu_util.o(.text) + OBJDIR/x86pcibios.o(.text) OBJDIR/x86biosemu.o(.text) OBJDIR/radeon_base.o(.text) diff --git a/BaS_gcc/x86emu/x86biosemu.c b/BaS_gcc/x86emu/x86biosemu.c index cfbb22b..36a93cd 100644 --- a/BaS_gcc/x86emu/x86biosemu.c +++ b/BaS_gcc/x86emu/x86biosemu.c @@ -237,7 +237,7 @@ void do_int(struct X86EMU *emu, int num) ret = 0; break; case 0x1A: - ret = x86_pcibios_emulator(); + ret = x86_pcibios_handler(emu); ret = 1; break; case 0xe6: @@ -351,12 +351,17 @@ void run_bios(struct radeonfb_info *rinfo) initialcs = (addr & 0xF0000) >> 4; initialip = (addr + 3) & 0xFFFF; - X86EMU_setMemBase((void *) biosmem, SIZE_EMU); + /* + * set emulator memory + */ + emu.mem_base = (void *) biosmem; + emu.mem_size = SIZE_EMU; for (i = 0; i < 256; i++) + { emu._X86EMU_intrTab[i] = do_int; + } - X86EMU_setupIntrFuncs(emu._X86EMU_intrTab); { char *date = "01/01/99"; for (i = 0; date[i]; i++)