CCS C Software and Maintenance Offers
FAQFAQ   FAQForum Help   FAQOfficial CCS Support   SearchSearch  RegisterRegister 

ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

CCS does not monitor this forum on a regular basis.

Please do not post bug reports on this forum. Send them to support@ccsinfo.com

Enhanced list file format?

 
Post new topic   Reply to topic    CCS Forum Index -> General CCS C Discussion
View previous topic :: View next topic  
Author Message
VernonAMiller



Joined: 11 Sep 2014
Posts: 25
Location: Contoocook, NH

View user's profile Send private message

Enhanced list file format?
PostPosted: Mon Oct 06, 2014 4:50 am     Reply with quote

Hello all:

In the .LST output file, there are four different options for list format, but none of them seems to give the entire opcode (two-word instructions like MOVFF on the PIC18 are missing the second word), plus meaningful symbolic names.

For example, here are some sample listing lines from another compiler:
Code:

0x0270   0xF002C004     MOVFF       R4, R2
0x0274   0xF003C005     MOVFF       R5, R3
0x0278   0x4A04         INFSNZ      R4, 1
0x027A   0x2A05         INCF        R5, 1


This gives the hex address, hex opcode (both words for two-word instructions), assembler mnemonic, and a useful reference name (in this case these are GPRs). This is a pretty standard type of machine-code listing in most compilers I have used.

With CCS C, I have not found a way to get this level of detail. The "Symbolic" and "With opcodes" settings each give me some of what I'm looking for, but I guess what I want is a blend of both.

Is there a way to get this?

Thanks!

VAM
asmboy



Joined: 20 Nov 2007
Posts: 2128
Location: albany ny

View user's profile Send private message AIM Address

PostPosted: Mon Oct 06, 2014 7:54 am     Reply with quote

command line options -- quoting here:

+LNxxx //<< this is the no opt default
Normal list file

+LSxxx
MPASM format list file

+LOxxx
Old MPASM list file

+LYxxx
Symbolic list file

if none of these produce what you want - then you are out of options.
VernonAMiller



Joined: 11 Sep 2014
Posts: 25
Location: Contoocook, NH

View user's profile Send private message

PostPosted: Mon Oct 06, 2014 8:13 am     Reply with quote

asmboy wrote:
if none of these produce what you want - then you are out of options.


Thanks. I guess I'm out of options then Smile I'll submit an enhancement request.

VAM
Ttelmah



Joined: 11 Mar 2010
Posts: 19378

View user's profile Send private message

PostPosted: Mon Oct 06, 2014 9:08 am     Reply with quote

What compiler version????

The full opcode is output on the current versions, so 'puzzled' about your lacking the second byte. It doesn't show it as a separate NOP though.
Code:

0023A C002 F00F      08060 MOVFF  02,0F
0023E C001 F00E      08061 MOVFF  01,0E
00242 C002 F018      08062 MOVFF  02,18
00246 C001 F017      08063 MOVFF  01,17


If I want a part in full MPASM format, I just import it into MPLAB, and look at it's program memory, disassembly window. Right click, select 'export to file'.
Code:

   286   023A    C002          MOVFF 0x2, 0xf                         
   287   023C    F00F          NOP                                   
   288   023E    C001          MOVFF 0x1, 0xe                         
   289   0240    F00E          NOP                                   
   290   0242    C002          MOVFF 0x2, 0x18                       
   291   0244    F018          NOP                                   
   292   0246    C001          MOVFF 0x1, 0x17                       
   293   0248    F017          NOP                                   

That also knows symbolic names for registers etc..
VernonAMiller



Joined: 11 Sep 2014
Posts: 25
Location: Contoocook, NH

View user's profile Send private message

PostPosted: Mon Oct 06, 2014 9:26 am     Reply with quote

Ttelmah wrote:
What compiler version????

The full opcode is output on the current versions, so 'puzzled' about your lacking the second byte. It doesn't show it as a separate NOP though.
Code:

0023A C002 F00F      08060 MOVFF  02,0F
0023E C001 F00E      08061 MOVFF  01,0E
00242 C002 F018      08062 MOVFF  02,18
00246 C001 F017      08063 MOVFF  01,17



I'm using 5.025d (eval version). And, yes, I can get the full two-word output (like you show) if I select "With opcodes" - but then I lose the symbolic info.

I was hoping there was a hidden setting or other way to get both the full two-word output for two-word instructions, plus symbols.

It's not a deal-breaker but it does make the output less convenient to use for debugging.

Thanks,
VAM

PS. Would you consider this to be a bug in the "Symbolic" setting? (Like "Symbolic LST file option causes incorrect display of two-word instructions"? Or is it really an enhancement request?
Display posts from previous:   
Post new topic   Reply to topic    CCS Forum Index -> General CCS C Discussion All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group