TAPR M-51 Operation Manual Download Page 5

M-51 for TUC52, Issue 1.0

 Page 5 

January 21, 1998

File:  m51-i1.doc

An example would be:

m51-> f 44 66 8d 3e 2a   {rtn}
x0025:
x33DE:
xE09C:
m51->

2.3.6

 

GO (G)

The GO command may be followed with up to 3 arguments.  The form is "g<argo> <arg1> <arg2>" where
all arguments are optional.  If "arg0" is included

1

, this will be the address that the monitor will begin the

user program at.  If "arg0" is not used, the monitor will begin execution at the address contained in the user's
PC register (shown by the XP command

2

).  "arg1" and "arg2" are optional break-points.  If included, the

monitor will replace the data at these locations with an LCALL instruction to the monitor break-point
routine and then begin execution of the user's program.  When the user's program encounters the LCALL
breakpoint instruction, control will be returned to the monitor 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 print some notes about the commands to the console.  This is handy if you don't
have the manual nearby.

2.4

 

C

OMMANDS IN 

D

ETAIL

This section outlines the commands in more detail.

2.4.1

 

JAM (J)

The JAM command is used to jam (or fill) an area of XDM with a constant.  Usage is "j start end value".
The "value" will be loaded into all memory locations from "start" to "end" inclusive.

An example would be:

m51-> j c000 c01f 41   {rtn}
m51-> dx c000          {rtn}
xC000: 41 41 41 41  41 41 41 41  41 41 41 41  41 41 41 41  AAAAAAAAAAAAAAAA
m51->

                                                          

1

 

Note that in the GO command there is no space between the G and the arg0 value.

2

 

See the Examine command.

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: