mirror of
https://github.com/dschmenk/PLASMA.git
synced 2024-05-31 12:41:29 +00:00
72 lines
1.2 KiB
Forth
72 lines
1.2 KiB
Forth
: IFACE 2 * + @ ;
|
|
|
|
LOOKUP CMDSYS 0 IFACE CONSTANT PLASMAVER
|
|
LOOKUP CMDSYS 2 IFACE CONSTANT CMDLINE
|
|
LOOKUP CMDSYS 3 IFACE PLASMA EXECMOD
|
|
LOOKUP STRCPY PLASMA STRCPY
|
|
LOOKUP STRCAT PLASMA STRCAT
|
|
LOOKUP HEAPAVAIL PLASMA FREEMEM
|
|
|
|
: PLASMAVER.
|
|
PLASMAVER 12 RSHIFT $0F AND CHAR 0 + EMIT
|
|
PLASMAVER 8 RSHIFT $0F AND CHAR 0 + EMIT
|
|
CHAR . EMIT
|
|
PLASMAVER 4 RSHIFT $0F AND CHAR 0 + EMIT
|
|
PLASMAVER $0F AND CHAR 0 + EMIT
|
|
;
|
|
|
|
: LOADMOD ( modulename paramstr -- )
|
|
CMDLINE " . " STRCPY DROP ( Dummy parameter for module name )
|
|
CMDLINE SWAP STRCAT DROP
|
|
EXECMOD 0< ABORT" Failed to load module"
|
|
;
|
|
|
|
: LOADMOD" ( modulename -- )
|
|
PAD SWAP STRCPY ( Move module name out of the way in case its immediate )
|
|
34 WORD ( Build a string from input )
|
|
LOADMOD
|
|
;
|
|
|
|
: EDIT
|
|
" ED" " " LOADMOD
|
|
;
|
|
|
|
: EDIT"
|
|
" ED" LOADMOD"
|
|
;
|
|
|
|
: CAT
|
|
" CAT" " " LOADMOD
|
|
;
|
|
|
|
: CAT"
|
|
" CAT" LOADMOD"
|
|
;
|
|
|
|
: DEL"
|
|
" DEL" LOADMOD"
|
|
;
|
|
|
|
: REN"
|
|
" REN" LOADMOD"
|
|
;
|
|
|
|
: COPY"
|
|
" COPY" LOADMOD"
|
|
;
|
|
|
|
: NEWDIR"
|
|
" NEWDIR" LOADMOD"
|
|
;
|
|
|
|
LOOKUP FILEIO 0 IFACE PLASMA GETPFX
|
|
LOOKUP FILEIO 1 IFACE PLASMA SETPFX
|
|
|
|
: PFX.
|
|
HERE GETPFX DROP HERE (.")
|
|
;
|
|
|
|
: PFX"
|
|
34 WORD SETPFX DROP
|
|
;
|
|
HERE FENCE |