diff options
author | Clyne Sullivan <clyne@bitgloo.com> | 2023-02-25 08:25:31 -0500 |
---|---|---|
committer | Clyne Sullivan <clyne@bitgloo.com> | 2023-02-25 08:25:31 -0500 |
commit | 34e5d76f9851f13a2c6611de065c229bafb17378 (patch) | |
tree | 7ee094718de01f949877d5f00b8fc5dc1f5f35d8 /core.fth | |
parent | 0b88b4596e6265863e75e7aabcca52734e147fae (diff) |
double-width mul/div; error strings
Diffstat (limited to 'core.fth')
-rw-r--r-- | core.fth | 14 |
1 files changed, 13 insertions, 1 deletions
@@ -1,7 +1,10 @@ +: * m* drop ; +: / 0 swap _/ ; +: % 0 swap _% ; + : cell+ 2 + ; : cells 2 * ; - : . 0 sys ; : emit 1 sys ; @@ -92,6 +95,15 @@ : 2* 2 * ; : 2/ 2 / ; +: /mod 2dup % -rot / ; +: s>d 1 m* ; +: */ >r m* r> _/ ; +: */mod >r m* 2dup r@ _% r> _/ ; +: sm/rem >r 2dup r@ _% -rot r> _/ ; +: fm/mod 2dup dup >r ^ >r sm/rem swap dup + if r> 0< if r> + swap 1- else swap r> drop then + else swap 2r> 2drop then ; + : cr 10 emit ; : bl 32 ; : space bl emit ; |