
Following is an example Makefile entry for ROMed standalone VxWorks.
line 02,16,17,18,19,20 are added to the original.
The first instruction after the reset is fetched from linear address
0xfffffff0.  It is at 0x3fff0 for 256 Kbyte ROM, at 0x7fff0 for 512 Kbyte ROM.
Because the highest ROM address is mapped to 0xffffffff.
In this example, we are making 256 Kbyte ROM. So we put romInit0 at
0x3fff0(linear address 0xfffffff0), romInit1 at 0x3fe00(linear address 0xfffffe00),
vxWorks.st at 0x0(linear address 0xfffc0000)
romInit0 jumps to romInit1 then romInit1 jumps to vxWorks.st.

01 vxWorks.st : usrConfig_st.o dataSegPad.o $(MACH_DEP) $(LDDEPS) $(LIBS) \
02 	romInit0.o romInit1.o
03 	@ $(RM) $@ symTbl.c symTbl.o tmp.o tmp.2
04 	@ make -f Makefile.$(CPU)$(TOOL) CPU=$(CPU) TOOL=$(TOOL) version.o
05 	$(LD) -o tmp.o $(LD_PARTIAL_FLAGS) dataSegPad.o $(MACH_DEP) \
06 	    usrConfig_st.o version.o $(LIBS)
07 	$(CP) tmp.o tmp.2
08 	$(LDOUT_SYMS) tmp.o
09 	$(ENV_BIN)makeSymTbl tmp.o > symTbl.c
10 	$(COMPILE_SYMTBL) symTbl.c
11 	$(LD) $(LDFLAGS) -e $(SYS_ENTRY) $(LD_LOW_FLAGS) \
12 	    -o $@ tmp.2 symTbl.o
13 	$(LDOUT_SYMS) $@
14 	$(LDOUT_CONV) $@
15 	@ $(RM) tmp.?	 version.o
16 	$(LD) -o romInit1 -X -N -e _romInit1 -Ttext 0000fe00 romInit1.o
17 	$(LD) -o romInit0 -X -N -e _romInit0 -Ttext 0000fff0 romInit0.o
18 	$(BINHEX) -a 0 vxWorks.st | sed -e "/S9/d" > bootrom.hex
19 	$(BINHEX) -a 3fe00 romInit1 | sed -e "/S9/d" >> bootrom.hex
20 	$(BINHEX) -a 3fff0 romInit0 >> bootrom.hex

