TAPR M-51 Operation Manual Download Page 7

M-51 for TUC52, Issue 1.0

 Page 7 

January 21, 1998

File:  m51-i1.doc

2.4.5

 

POV (P)

The POV (Power On Vector) command allows the user to tell the monitor that you want it to jump to
location "arg0" a few seconds after power or reset.  This command is only useful if the external RAM is
protected from memory loss during power off states (i.e., battery backed up).  To issue the command type "P
arg0" from the console.  The location for start-up is saved in a reserved location in RAM (it's complement is
also saved in several places as a check).  At power-on or reset the monitor looks to the console port for a
few seconds to see if a period {.} or escape character {esc} are entered.  If not, program control is passed to
the routine starting at location "arg0".  If period {.} or escape character {esc} are entered within a few
seconds of reset then program control is retained by the monitor and the user will see the normal sign-on
message and be able to operate the monitor until the next power-on or reset event.  To clear the vector issue
the UPOV command again with "arg0" equal to zero (0).  That will clear the vector so that the monitor will
function normally and look only to the console for commands after a reset or power-up.  The best way to
ensure that the monitor will see the period or ESC is to type the character repetitively following a reset.

2.4.6

 

RXINTEL (R)

The RXINTEL command is used to load INTEL HEX code into memory space.  The RXINTEL command
may be followed by an optional offset argument.  The offset value is added to the address contained in each
record of the HEX code.  The result of the addition points to where the data portion of the record will be
stored in XDM.  If the offset is omitted, it is assumed to be zero.  When a record is correctly received, a dot
(.) will be printed on the console.  When the end of file is found the monitor will output a message to
indicate that the down load was successful and the last location where data was stored.

An example of a screen following a download might look like this.

m51->r 8000   {rtn}
.............................................................
.............................................................
.............................................................
...............................................

RX OK, DATA ENDING AT: 9981

m51->

2.4.7

 

VFINTEL (V)

The VFINTEL command is very much like the RXINTEL command.  The only difference is that the
downloaded data is compared to the data in memory (as opposed to overwriting the data in memory like
RXINTEL).  If there is a difference between the downloaded record and the data in memory an error
message will be displayed.

2.5

 

S

UBSTITUTE 

(SX, SI, SF)

The SUBSTITUTE command is used to show and modify XDM, IDM or the Special Function Registers.
The SUBSTITUTE command is always followed by an address argument.  This argument determines where
the substitution will begin.  The address will be displayed followed by the data at that location.  To change
the data enter a new value and type space {sp} to continue at the next location.  To go to the next address
without changing the data just enter a space {sp} without preceding data.  To complete the SUBSTITUTE
process enter a return character [ret] to return to the monitor command mode.

An example would be:

Summary of Contents for M-51

Page 1: ...from double mapped program and data RAM memory This manual describes how to use the monitor what s needed for hardware and different options for recovering the lost P0 and P2 ports which are not available for I O since they are used to create the address and data bus As with all instruction manuals there may be some errors or sections that do not provide satisfactory explanations If you find error...

Page 2: ... a summary for each command The next section provides the details of each command Table 1 Command Summary Command Description Usage BLAST FROM Blast from XDM BF adr data BLAST TO Blast to XDM BT adr data CHECK PROG MEM Checksum of PM CP first last CHECK XDATA Checksum of XDM CX first last DISPLAY PGM Display Program Memory DP first last DISPLAY XDM Display External Data Memory DX first last DISPLA...

Page 3: ...d is followed by two arguments CHECKSUM calculates a 16 bit sum checksum from arg0 to arg1 inclusive and prints the sum on the console Use CP first last for Program Memory and CX first last for XDM An example would be m51 cp 1000 1fff rtn Checksum 14DE m51 2 3 3 DISPLAY DP DX DI DS The DISPLAY is used to show the data at multiple consecutive locations of PM XDM IDM or SFRs Use DP for PM DX for XDM...

Page 4: ...egister incl reg bank XK display and allow changes of just the current reg bank within PSW XRn display and allow changes of Rn of the selected register bank n 0 1 7 XD display and allow changes of the DPTR register 16 bits XB display and allow changes of the B register XS display and allow changes of the SP register XP display and allow changes of the PCTR register 16 bits Some examples would be m...

Page 5: ...or and the monitor will return the original user s data to the breakpoint address The GO command restores all user registers before going to the user program and it saves all user registers following a break point Be sure to review the section near the end of this document titled Cautions with GO Breakpoints NEXT and ZNEXT Commands This is important information 2 3 7 HELP H The HELP command will p...

Page 6: ...register The 8051 will execute one instruction and then go on to the following instruction where it will then encounter the previously placed monitor trap instruction This instruction will transfer execution back to the monitor which will 1 swap the trap instruction with the user s original instruction at the trap address 2 save the user s registers 3 print the user s registers to the terminal and...

Page 7: ...mory space The RXINTEL command may be followed by an optional offset argument The offset value is added to the address contained in each record of the HEX code The result of the addition points to where the data portion of the record will be stored in XDM If the offset is omitted it is assumed to be zero When a record is correctly received a dot will be printed on the console When the end of file ...

Page 8: ...or heavily capacitivly coupled address and or data leads An example would be m51 tx 0 1000 rtn TR Write Read Write Test TR Loading initial value 00 TR Walking ones 01 02 04 08 10 20 40 80 TR Loading initial value FF TR Walking zeros FE FD FB F7 EF DF BF 7F TR Random data test TR Test OK m51 3 MEMORY AND PORT MAPPING The m 51 monitor as configured for TUC 52 requires that the monitor ROM start at 0...

Page 9: ...and P3 7 are lost to RD and WR signals Ports 0 and 2 can be recovered by 8255 I O ports to some extent If possible assign those I Os that need to be bi directional of quickly bit banged to P1 and the unused sections of P3 Then group all the remaining inputs to one 8255 port configured as in input and all the remaining outputs to another 8255 port configured as an output In most cases this will giv...

Page 10: ... point address es However the monitor isn t always successful at this You may need to re download the your code again to ensure that your code is intact Recall that the monitor uses a three byte LCALL instruction as its breakpoint trap instruction It s unfortunate that the 8051 doesn t include a single byte call instruction like the RSTn of the 8080 family This would be ideal for use by a simple m...

Page 11: ...ruction to any other location in the Program Memory space In general the first vector location 0003H jumps to EFFDH the second vector 000BH jumps to EFFAH and so on At the time this document was written the interrupt vectors were as follows Table 2 Interrupt Vectors3 ROM Adr Jumps to RAM Adr 00003H Jumps to 0EFFDH 0000BH Jumps to 0EFFAH 00013H Jumps to 0EFF7H 0001BH Jumps to 0EFF4H 00023H Jumps to...

Reviews: