X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=fth%2Fsystem.fth;h=08f3ef4f8474f17497ea7454bf8888e08564f31e;hb=ff136ea5caf229ce3135cc6245051f40a9b443f3;hp=c84f08b9efc2c65cc47fe2238b37e1c6dca338f7;hpb=189c9185ac57697d23484fb8c50c5d0b062c7ccd;p=debian%2Fpforth diff --git a/fth/system.fth b/fth/system.fth index c84f08b..08f3ef4 100644 --- a/fth/system.fth +++ b/fth/system.fth @@ -28,14 +28,17 @@ \ Author: Phil Burk \ Copyright 1994 3DO, Phil Burk, Larry Polansky, David Rosenboom \ -\ The pForth software code is dedicated to the public domain, -\ and any third party may reproduce, distribute and modify -\ the pForth software code or any derivative works thereof -\ without any compensation or license. The pForth software -\ code is provided on an "as is" basis without any warranty -\ of any kind, including, without limitation, the implied -\ warranties of merchantability and fitness for a particular -\ purpose and their equivalents under the laws of any jurisdiction. +\ Permission to use, copy, modify, and/or distribute this +\ software for any purpose with or without fee is hereby granted. +\ +\ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL +\ WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED +\ WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL +\ THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +\ CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING +\ FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF +\ CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +\ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. \ ********************************************************************* : COUNT dup 1+ swap c@ ; @@ -318,6 +321,10 @@ dup cell+ @ swap @ ; +: 2CONSTANT ( n1 n2 -c- ) ( -x- n1 n2 ) + CREATE , , ( n1 n2 -- ) + DOES> 2@ ( -- n1 n2 ) +; : ABS ( n -- |n| ) dup 0< @@ -770,7 +777,13 @@ variable TRACE-INCLUDE rdrop ; -: $INCLUDE ( $filename -- ) count included ; +defer MAP.FILENAME ( $filename1 -- $filename2 , modify name ) +' noop is map.filename + +: $INCLUDE ( $filename -- ) + map.filename + count included +; create INCLUDE-SAVE-NAME 128 allot : INCLUDE ( -- )