anchor.diff:      'EVAL @EXECUTE ?STACK
     REPEAT DROP 'PROMPT @EXECUTE ;
   
  +\ pg 47 words
  +
  +t: _TYPE ( b u --) FOR AFT DUP C@ >CHAR EMIT 1 + THEN NEXT DROP ;
  +t: dm+ ( b u -- b ) OVER 4 U.R SPACE FOR AFT DUP C@ 3 U.R 1 + THEN NEXT ;
  +t: DUMP ( b u --)
  +  BASE @ >R 
  +  HEX  16 /
  +  FOR CR 16 2DUP dm+ ROT ROT 2 SPACES _TYPE NUF? NOT WHILE
  +  NEXT ELSE R> DROP THEN DROP  R> BASE ! ;
  +
   \ I/O device drivers.
   
   S" v-mgia.fs" included	( MGIA video )
  
positive.code:   SP@ >R  HANDLER @ >R  RP@ HANDLER ! EXECUTE R> HANDLER !  R> DROP  0 ;
  
  t: THROW ( err# -- err# )
    HANDLER @ RP!  R> HANDLER !  R> SWAP >R SP! DROP R> ;
  
  tcreate NULL$ 0 t,
  
  
negative.code: 
  t: abort" ( f --) IF do$ THROW THEN do$ DROP ;
  ( " to restore syntax highlighting )
  : tplace	dup tc, begin dup while over c@ tc, 1 /string repeat 2drop ;
  : ",		[char] " word count tplace /cell talign ;
  : ~ABORT"	[t'] abort" t, ", ;
  : ~."		[t'] ."| t, ", ;
  
  t: .S ( --) CR DEPTH DUP . ': EMIT SPACE FOR AFT R@ PICK . THEN NEXT ."  <sp" ;
  
  \ pg 38 words
  
  t: $INTERPRET ( a --)
    NAME? IF
      DUP CELL+ CELL+ @ 2 AND ABORT" Compile-only"
      EXECUTE EXIT
    THEN
    'NUMBER @EXECUTE IF EXIT THEN
    THROW ;
  