Dunno if this'll help, but I dragged out a version of FIG Forth that I was running last year on the Kowalski simulator. At the time I had to tweak it to get it to assemble & run, although I don't recall all the reasons. Anyway, the following excerpt seems pertinent. Note I wasn't
relocating Forth, merely trying to get it to run at $0200 & up. The first and last line of this excerpt have been tweaked.
Changing the ORG statement should let you relocate, to $0300 for example. Does this make sense, or am I not grasping the problem? Are you able to tell us where the header for LIT is located? Better yet, at what address does the label ENTER appear?
Code:
.ORG $0200 ;tweak. Was: *=*+2
;
; User cold entry point
ENTER NOP ; Vector to COLD entry
JMP COLD+2 ;
REENTR NOP ; User Warm entry point
JMP WARM ; Vector to WARM entry
.WORD $0004 ; 6502 in radix-36
.WORD $5ED2 ;
.WORD NTOP ; Name address of MON
.WORD $7F ; Backspace Character
.WORD UAREA ; Initial User Area
.WORD TOS ; Initial Top of Stack
.WORD $1FF ; Initial Top of Return Stack
.WORD TIBX ; Initial terminal input buffer
;
;
.WORD 31 ; Initial name field width
.WORD 0 ; 0=nod disk, 1=disk
.WORD TOP ; Initial fence address
.WORD TOP ; Initial top of dictionary
.WORD VL0 ; Initial Vocabulary link ptr.
;
; The following offset adjusts all code fields to avoid an
; address ending $XXFF. This must be checked and altered on
; any alteration , for the indirect jump at W-1 to operate !
;
*=*+2 ;tweak was: .ORIGIN *+2 whereas my Fig listing says *=*+2
_________________
In 1988 my 65C02 got six new registers and 44 new full-speed instructions!
https://laughtonelectronics.com/Arcana/ ... mmary.html