I recently upgraded from DK51 to PK51, one of the big reasons was the new 'disassembly output file' option. However, I can't for the life of me figure out how to get this to work when using ONLY assembler files. I have a project (and I re-made it from scratch) containing my assembly source files. I have checked the 'pack' option in 'C' (I note that this doesn't relate to assembly files). I have enabled the generation of the '.cod' file. But no '.cod' file is generated! It appears (I'm guessing) that only if the object file indicates that packing was done, is the '.cod' file made, but since there is no documentation, I don't know for sure. How can one generate a '.cod' file from a project that is using only Assembly, not C? Any help is appreciated. David Erbas-White
Let me re-word the question: how can I turn on the OPTIMIZEADVANCED for the Assembler? This appears to be the only way for the object files generated by the Assembler to be recognized by the linker as needing to generate the disassembly output file. Let me repeat the reply I obtained from Keil support. The Linker Code Packing optimization requires the OBJECTADVANCED format that is currently only available with the C51 Compiler. Only C51 means not AX51 or A51. try to include a dummy "C" source-file From my experience (experiments with the Keil Measure example) this will give linker code packing (& I presume disassembler listing) of the C portions of the code but not the assembler portions. Logically since objectadvance cannot be set in the assembler. Perhaps also obviously this thread is I guess being followed by those who would like these features in the assembler.
"...obviously this thread is I guess being followed by those who would like these features..." And this Thread: http://www.keil.com/forum/docs/thread1657.asp I can't really see why the disassembler output should depend on any linker, assembler or compiler options; after all, the debugger manages it. All we want is a proper source+assembler listing - "LPP that works" Just making the debugger's disassembler available and printable would do it!
uVision2 V2.31 (part of C51 V7.01, C251 V3.51 and C166 V4.23) supports now finally copy and paste in the disassembly window for large portions. In this way you can copy the content to an editor window and print it.