9/11/95
Page 5
pdrem.hex
. However, before invoking
nmake
(or
nmaker
), the user needs to be aware of the
following items:
Though PDREM supports a virtual UART interface that the application can use to
communicate with the Remote Console window of the Paradigm Debug/RT, the
target.h
file in the
pdrem
directory does not have the serial I/O interrupt vector set. To be able to
send the string from a printf() statement of a C program to the Remote Console window,
the user needs to change two lines of code in the
target.h
file as shown in Figure 4. The
information that needs to be changed is shown in boldface.
Figure 5 -
pdrem.cfg
File for SD186EM Board
//
//
//
//
Paradigm LOCATE configuration file for building the PDREMOTE/ROM kernel.
Copyright (C) 1993 Paradigm Systems. All rights reserved.
hexfile intel86
listfile segments
// Intel hex output
// Create a segment map
map 0x00000 to 0x003ff as reserved
map 0x00400 to 0x00fff as rdwr
map 0x01000 to 0xdffff as reserved
map 0xe0000 to 0xfffff as rdonly
//
Interrupt vector table
//
PDREMOTE/ROM data area
//
Reserved for applications
//
PDREMOTE/ROM kernel EPROM
cputype AM186EM
//
Select the processor type
initcode inbyte 0x1000
// inbyte is here to create LOCATE class
//
Chip select initialization not necessary (flash utility sets up
//
chip selects). However, there is a memory limitation on how many
//
initcode parameters can be used at address 0xf7ff0 (will run into
//
flash downloader). Since the flash downloader will jump to address
//
0xf7ff0, the initcode is used here to serve as a jump to pdremote's
//
code. The class, LOCATE, will contain the jump automatically.
//
//
umcs = 0xfe38
//
lmcs = 0x0ff8
//
mpcs = 0x80bf
//
pacs = 0x003f
\
\
\
\
dup DATA ROMDATA
// Make a copy of the initialized data
class CODE = 0xe000
class
DATA = 0x0040
class
LOCATE = 0xf7ff
// Modify to set the EPROM address
// And the RAM address
// Initialization code
order
DATA
\ // Fix the class ordering
\
\
CONST
BSS BSSEND
STACK
order CODE
\ // Code, initialized data in EPROM
ROMDATA ENDROMDATA
output CODE
\ // Write to the output file
\
ROMDATA ENDROMDATA
LOCATE
These are commented out,
E86MON has already set
these up before jumping to
PDREM