C M L 1 2 S D P 2 5 6
0 1 / 3 0 / 0 4
10
B) Set Stack, Initialize memory map and SCI0 port and send prompt.
C) Receive first character from Console port and execute monitor if ASCII text / command,
else start utility mode for programming services.
Mon12 Monitor Commands
AUTO [<Address>]
Enable Auto start, address is the vector
NOAUTO
Disable Auto start
BF <StartAddress> <EndAddress>
[<data>]
Fill memory with data
BR [<Address>]
Set/Display user breakpoints
BULK
Erase entire on-chip EEPROM contents
CALL [<Address>]
Call user subroutine at <Address>
G [<Address>]
Begin/continue execution of user code
HELP
Display the Mon12 command summary
LOAD [P]
Load S-Records into memory, P = Paged S2
MD <StartAddress> [<EndAddress>]
Memory Display Bytes
MM <Address>
Modify Memory Bytes (8 bit values)
MW <Address>
Modify memory Words (16 bit values)
MOVE <StartAddress> <EndAddress>
<DestAddress>
Move a block of memory
RD
Display all CPU registers
RM
Modify CPU Register Contents
STOPAT <Address>
Trace until address
T [<count>]
Trace <count> instructions
MON12 Interrupt Support
All interrupt services under MON12 are provided through the ram vector table,
see Table 2
.
Each location in the table is initialized to a value of $0000 to cause the trap of an unscheduled
interrupt. Any nonzero value will allow the interrupt to proceed to the user's service routine
that should be located at the provided address value. Interrupt service delay is plus 21 cycles
over standard interrupt service.
To use vectors specified in the table, the user must insert the address of the interrupt service
routine during software initialization into the ram interrupt table. For an example, for the IRQ
vector, the following is performed:
Example:
IRQ Service routine label = IRQ_SRV
Ram Vector Table address is defined in table below, IRQ vector definition:
VIRQ EQU $3EF2 ; define ram table vector location
Place IRQ service routine address in the table:
MOVW
#IRQ_SRV,VIRQ
This vector initialization should remain after debug when auto start will be applied for launching
the user's application. Note that the user interrupt service routines must be located in the
$4000 - $7FFF address range for correct operation. See Autostart for more details.