diff options
author | dcs <dcs@FreeBSD.org> | 1999-04-24 17:25:35 +0000 |
---|---|---|
committer | dcs <dcs@FreeBSD.org> | 1999-04-24 17:25:35 +0000 |
commit | aa57b67a291a075886a47e2b47b799834b376aef (patch) | |
tree | 37435e24470845aa0b8683ef5d1ad03ec373a3eb /sys/boot/forth/loader.4th | |
parent | 1526baa9c80cbe657e4123bbb739ccfcc7b2ffce (diff) | |
download | FreeBSD-src-aa57b67a291a075886a47e2b47b799834b376aef.zip FreeBSD-src-aa57b67a291a075886a47e2b47b799834b376aef.tar.gz |
Add loader.4th man page (worst man page I ever wrote -- reviews
are welcomed). Correct a nasty bug in loader.4th before anyone
notices, add a couple of features.
Diffstat (limited to 'sys/boot/forth/loader.4th')
-rw-r--r-- | sys/boot/forth/loader.4th | 80 |
1 files changed, 79 insertions, 1 deletions
diff --git a/sys/boot/forth/loader.4th b/sys/boot/forth/loader.4th index ef299c6..363aab2 100644 --- a/sys/boot/forth/loader.4th +++ b/sys/boot/forth/loader.4th @@ -22,7 +22,7 @@ \ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF \ SUCH DAMAGE. \ -\ $Id$ +\ $Id: loader.4th,v 1.1 1999/03/09 14:06:55 dcs Exp $ include /boot/support.4th @@ -76,6 +76,82 @@ only forth definitions also support-functions then ; immediate +\ ***** enable-module +\ +\ Turn a module loading on. + +: enable-module ( <module> -- ) + bl parse module_options @ >r + begin + r@ + while + 2dup + r@ module.name dup .addr @ swap .len @ + compare 0= if + 2drop + r@ module.name dup .addr @ swap .len @ type + true r> module.flag ! + ." will be loaded." cr + exit + then + r> module.next @ >r + repeat + r> drop + type ." wasn't found." cr +; + +\ ***** disable-module +\ +\ Turn a module loading off. + +: disable-module ( <module> -- ) + bl parse module_options @ >r + begin + r@ + while + 2dup + r@ module.name dup .addr @ swap .len @ + compare 0= if + 2drop + r@ module.name dup .addr @ swap .len @ type + false r> module.flag ! + ." will not be loaded." cr + exit + then + r> module.next @ >r + repeat + r> drop + type ." wasn't found." cr +; + +\ ***** toggle-module +\ +\ Turn a module loading on/off. + +: toggle-module ( <module> -- ) + bl parse module_options @ >r + begin + r@ + while + 2dup + r@ module.name dup .addr @ swap .len @ + compare 0= if + 2drop + r@ module.name dup .addr @ swap .len @ type + r@ module.flag @ 0= dup r> module.flag ! + if + ." will be loaded." cr + else + ." will not be loaded." cr + then + exit + then + r> module.next @ >r + repeat + r> drop + type ." wasn't found." cr +; + \ ***** show-module \ \ Show loading information about a module. @@ -101,6 +177,8 @@ only forth definitions also support-functions then r> module.next @ >r repeat + r> drop + type ." wasn't found." cr ; \ Words to be used inside configuration files |