\ KERNEL4.SEQ Last part of the kernel file, finishes up the compile. \ Link this file into the FILELIST chain. FILES DEFINITIONS VARIABLE EQUCOLON.SEQ FORTH DEFINITIONS META IN-META CODE (=:) ( N1 --- ) \ Store to BODY field of following def MOV ES: BX, 0 [IP] POP 3 [BX] ADD IP, # 2 NEXT END-CODE CODE OFF> ( --- ) \ Store to BODY field of following def MOV ES: BX, 0 [IP] MOV 3 [BX], # 0 WORD ADD IP, # 2 NEXT END-CODE CODE ON> ( --- ) \ Store to BODY field of following def MOV ES: BX, 0 [IP] MOV 3 [BX], # -1 WORD ADD IP, # 2 NEXT END-CODE CODE (@) ( --- N1 ) \ Fetch BODY field of following def MOV ES: BX, 0 [IP] PUSH 3 [BX] ADD IP, # 2 NEXT END-CODE : =: ( N1 T1 --- ) STATE @ IF COMPILE (=:) ELSE ' >BODY ! THEN ; IMMEDIATE CODE INCR> ( --- ) MOV ES: BX, 0 [IP] INC 3 [BX] WORD ADD IP, # 2 NEXT END-CODE CODE DECR> ( --- ) MOV ES: BX, 0 [IP] DEC 3 [BX] WORD ADD IP, # 2 NEXT END-CODE CODE +!> ( N1 --- ) POP CX MOV ES: BX, 0 [IP] ADD 3 [BX], CX WORD ADD IP, # 2 NEXT END-CODE : !> ( N1 T1 --- ) STATE @ IF COMPILE (=:) ELSE ' >BODY ! THEN ; IMMEDIATE : @> ( N1 T1 --- ) STATE @ IF COMPILE (@) ELSE ' >BODY @ THEN ; IMMEDIATE