Hi sir,
how can i place the Start08.c in to bootloader ?
_Copy *toCopyDownBeg 0xEA9B << why that statment be inside the rom1 ?
=================MAP ============================
Entry point: 0xF87B (_Startup)
_startupData is allocated at 0xF884 and uses 6 Bytes
extern struct _tagStartup {
unsigned nofZeroOut 1
_Range pZeroOut 0x100 513
_Copy *toCopyDownBeg 0xEA9B
} _startupData;
==========================prm ========================
/* This is a linker parameter file for the mc9s08jm8 */
NAMES END /* CodeWarrior will pass all the needed files to the linker by command line. But here you may add your own files too. */
SEGMENTS /* Here all RAM/ROM areas of the device are listed. Used in PLACEMENT below. */
Z_RAM = READ_WRITE 0x00B0 TO 0x00FF;
RAM = READ_WRITE 0x0100 TO 0x04AF;
RAM1 = READ_WRITE 0x1860 TO 0x195F;
ROM = READ_ONLY 0xE000 TO 0xF7FF;
Bootloader = READ_ONLY 0xF800 TO 0xFFAF;
//Bootloader = READ_ONLY 0xFA00 TO 0xFFAF;
//Bootloader = READ_ONLY 0xF800 TO 0xFFAD;
ROM1 = READ_ONLY 0xFFC0 TO 0xFFC3;
/* INTVECTS = READ_ONLY 0xFFC4 TO 0xFFFF; Reserved for Interrupt Vectors */
END
PLACEMENT /* Here all predefined and user segments are placed into the SEGMENTS defined above. */
DEFAULT_RAM /* non-zero page variables */
INTO RAM,RAM1;
// _PRESTART, /* startup code */
// STARTUP, /* startup data structures */
ROM_VAR, /* constant variables */
STRINGS, /* string literals */
VIRTUAL_TABLE_SEGMENT, /* C++ virtual table segment */
// DEFAULT_ROM
DEFAULT_ROM,
COPY /* copy down information: how to initialize variables */
INTO ROM; /* ,ROM1: To use "ROM1" as well, pass the option -OnB=b to the compiler */
_PRESTART,
STARTUP,
Bootloader_ROM INTO Bootloader;
_DATA_ZEROPAGE, /* zero page variables */
MY_ZEROPAGE INTO Z_RAM;
END
why i want put the start08.c into bootlaoder.rom ? because when erase the rom1( E000~F7FF), Device work error, can be active again .