From 99f0be82abbb6bab4f6f6f678f8564275bef3438 Mon Sep 17 00:00:00 2001 From: Stefan Reinauer Date: Fri, 20 Nov 2009 19:04:41 +0000 Subject: [PATCH] Another nice patch from Mark Cave-Ayland: This patch corrects a couple of (minor) bugs in the Forth source debugger; firstly the number of wordlists is held in #order, rather than #vocs which is the total number of wordlists which can be held simultaneously. Secondly, the initial interruptforth setting in kernel/bootstrap.c is actually wrong, but since this is reset by enterforth() it is not needed anyway. Hence this line can simply be removed. git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@623 f158a5a8-5612-0410-a976-696ce0be7e32 --- kernel/bootstrap.c | 1 - kernel/dict.c | 4 ++-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/kernel/bootstrap.c b/kernel/bootstrap.c index 8eb7b04..7a16017 100644 --- a/kernel/bootstrap.c +++ b/kernel/bootstrap.c @@ -909,7 +909,6 @@ static void run_dictionary(char *basedict) if (verbose) printk("Jumping to dictionary..."); - interruptforth = 1; enterforth((xt_t)PC); } diff --git a/kernel/dict.c b/kernel/dict.c index 521b412..b94fafd 100644 --- a/kernel/dict.c +++ b/kernel/dict.c @@ -173,7 +173,7 @@ ucell findsemis(ucell xt) if (read_ucell(cell2pointer(usesvocab))) { /* Vocabularies are in use, so search each one in turn */ - ucell numvocabs = findword("#vocs") + sizeof(cell); + ucell numvocabs = findword("#order") + sizeof(cell); for (i = 0; i < read_ucell(cell2pointer(numvocabs)); i++) { ucell vocabs = findword("vocabularies") + 2 * sizeof(cell); @@ -228,7 +228,7 @@ ucell findxtfromcell(ucell incell) if (read_ucell(cell2pointer(usesvocab))) { /* Vocabularies are in use, so search each one in turn */ - ucell numvocabs = findword("#vocs") + sizeof(cell); + ucell numvocabs = findword("#order") + sizeof(cell); for (i = 0; i < read_ucell(cell2pointer(numvocabs)); i++) { ucell vocabs = findword("vocabularies") + 2 * sizeof(cell);