mirror of
https://github.com/forth-ev/VolksForth.git
synced 2024-11-25 10:30:57 +00:00
52 lines
3.1 KiB
Forth
52 lines
3.1 KiB
Forth
\ *** Block No. 0 Hexblock 0
|
||
\\ 26oct86we
|
||
|
||
Diese File enth„lt Worte, mit denen die Speicheraufteilung
|
||
des volksFORTH ver„ndert werden kann.
|
||
|
||
RELOCATE setzt R0 und S0 neu, beachten Sie dazu auch die
|
||
Ausf<EFBFBD>hrungen im Handbuch.
|
||
|
||
Mit BUFFERS kann man die Anzahl der Diskbuffer ver„ndern.
|
||
Standardm„žig ist das System auf &10 Buffer eingestellt. Reicht
|
||
der Platz im Dictionary bei sehr grožen Programmen nicht aus,
|
||
kann man hier am ehesten Speicherplatz einsparen.
|
||
Umgekehrt erh”ht sich der Arbeitskomfort beim Editieren, wenn
|
||
m”glichst viele Diskbuffer vorhanden sind, um Diskettenzugriffe
|
||
zu minimieren.
|
||
|
||
\ *** Block No. 1 Hexblock 1
|
||
\ Relocate a system 26oct86we
|
||
|
||
| : relocate-tasks ( mainup -- ) up@ dup
|
||
BEGIN 2+ under @ 2dup - WHILE rot drop REPEAT 2drop !
|
||
up@ 2+ @ origin 2+ ! ;
|
||
|
||
: relocate ( stacklen rstacklen -- )
|
||
2dup + limit origin - b/buf - 2-
|
||
u> abort" kills all buffers"
|
||
over pad $100 + origin - u< abort" cuts the dictionary"
|
||
dup udp @ $40 +
|
||
u< abort" kills returnstack"
|
||
flush empty over + origin + origin &12 + ! \ r0
|
||
origin + dup relocate-tasks \ multitasking
|
||
6 - origin &10 + ! \ s0
|
||
cold ; -->
|
||
\ *** Block No. 2 Hexblock 2
|
||
\ bytes.more buffers 15sep86we
|
||
|
||
| : bytes.more ( n+- -- )
|
||
up@ origin - + r0 @ up@ - relocate ;
|
||
|
||
: buffers ( +n -- )
|
||
b/buf * 4+ limit r0 @ - swap - bytes.more ;
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|