<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <!--Converted with LaTeX2HTML 2008 (1.71) original version by: Nikos Drakos, CBLU, University of Leeds * revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan * with significant contributions from: Jens Lippmann, Marek Rouchal, Martin Wilck and others --> <HTML> <HEAD> <TITLE>5.1.2 How the Debugger Works</TITLE> <META NAME="description" CONTENT="5.1.2 How the Debugger Works"> <META NAME="keywords" CONTENT="sdccman"> <META NAME="resource-type" CONTENT="document"> <META NAME="distribution" CONTENT="global"> <META NAME="Generator" CONTENT="LaTeX2HTML v2008"> <META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css"> <LINK REL="STYLESHEET" HREF="sdccman.css"> <LINK REL="next" HREF="node143.html"> <LINK REL="previous" HREF="node141.html"> <LINK REL="up" HREF="node140.html"> <LINK REL="next" HREF="node143.html"> </HEAD> <BODY > <!--Navigation Panel--> <A NAME="tex2html2921" HREF="node143.html"> <IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A> <A NAME="tex2html2915" HREF="node140.html"> <IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A> <A NAME="tex2html2909" HREF="node141.html"> <IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A> <A NAME="tex2html2917" HREF="node1.html"> <IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A> <A NAME="tex2html2919" HREF="node191.html"> <IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A> <BR> <B> Next:</B> <A NAME="tex2html2922" HREF="node143.html">5.1.3 Starting the Debugger</A> <B> Up:</B> <A NAME="tex2html2916" HREF="node140.html">5.1 Debugging with SDCDB</A> <B> Previous:</B> <A NAME="tex2html2910" HREF="node141.html">5.1.1 Compiling for Debugging</A> <B> <A NAME="tex2html2918" HREF="node1.html">Contents</A></B> <B> <A NAME="tex2html2920" HREF="node191.html">Index</A></B> <BR> <BR> <!--End of Navigation Panel--> <H2><A NAME="SECTION00612000000000000000"> 5.1.2 How the Debugger Works</A> </H2> <P> When the --debug option is specified the compiler generates extra symbol information some of which are put into the assembler source and some are put into the .adb file. Then the linker creates the .cdb file from the individual .adb files with the address information for the symbols. The debugger reads the symbolic information generated by the compiler & the address information generated by the linker. It uses the SIMULATOR (Daniel's S51) to execute the program, the program execution is controlled by the debugger. When a command is issued for the debugger, it translates it into appropriate commands for the simulator. (Currently SDCDM only connects to the simulator but <I>newcdb</I> at <TT><A NAME="tex2html56" HREF="http://ec2drv.sf.net/">http://ec2drv.sf.net/</A></TT> is an effort to connect directly to the hardware.) <P> <BR><HR> <ADDRESS> 2011-03-20 </ADDRESS> </BODY> </HTML>