![]() ![]() | ![]() |
added answords.fs and strsignal.c added checking of documenetation of ANS Forth words Fixed many documentation errors and added some documentation signal handling now uses strsignal and can handle signals not present on all machines
1: \ environmental queries 2: 3: \ wordlist constant environment-wordlist 4: 5: Create environment-wordlist wordlist drop 6: 7: : environment? ( c-addr u -- false / ... true ) 8: environment-wordlist search-wordlist if 9: execute true 10: else 11: false 12: endif ; 13: 14: environment-wordlist set-current 15: get-order environment-wordlist swap 1+ set-order 16: 17: \ assumes that chars, cells and doubles use an integral number of aus 18: 19: \ this should be computed in C as CHAR_BITS/sizeof(char), 20: \ but I don't know any machine with gcc where an au does not have 8 bits. 21: 8 constant ADDRESS-UNIT-BITS ( -- n ) \ environment 22: 1 ADDRESS-UNIT-BITS chars lshift 1- constant MAX-CHAR 23: MAX-CHAR constant /COUNTED-STRING 24: ADDRESS-UNIT-BITS cells 2* 2 + constant /HOLD 25: &84 constant /PAD 26: true constant CORE 27: true constant CORE-EXT? 28: 1 -3 mod 0< constant FLOORED 29: 30: 1 ADDRESS-UNIT-BITS cells 1- lshift 1- constant MAX-N 31: -1 constant MAX-U 32: 33: -1 MAX-N 2constant MAX-D 34: -1. 2constant MAX-UD 35: 36: 0 1 2constant gforth \ minor major version 37: 38: \ !! RETURN-STACK-CELLS 39: \ !! STACK-CELLS 40: \ !! floating-stack 41: \ !! max-float 42: 15 constant #locals \ 1000 64 / 43: \ One local can take up to 64 bytes, the size of locals-buffer is 1000 44: maxvp constant wordlists 45: 46: forth definitions 47: previous 48: