This repository has been archived on 2024-09-22. You can view files and clone it, but cannot push or open issues or pull requests.
pbi-ide/help/BasicStampHelp/Content/LanguageTopics/ExampleTopics/DebugEx.htm

133 lines
6.5 KiB
HTML

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns:MadCap="http://www.madcapsoftware.com/Schemas/MadCap.xsd" MadCap:lastBlockDepth="6" MadCap:lastHeight="94" MadCap:lastWidth="853" MadCap:disableMasterStylesheet="true" MadCap:tocPath="" MadCap:InPreviewMode="false" MadCap:PreloadImages="false" MadCap:RuntimeFileType="Topic" MadCap:TargetType="WebHelp" lang="en-us" xml:lang="en-us" MadCap:PathToHelpSystem="../../../" MadCap:HelpSystemFileName="Default.xml" MadCap:SearchType="Stem">
<head><title>DEBUG Examples</title>
<link href="../../SkinSupport/MadCap.css" rel="stylesheet" />
<link href="../../Resources/Stylesheets/BSE_Help.css" rel="stylesheet" />
<script src="../../SkinSupport/MadCapAll.js" type="text/javascript">
</script>
</head>
<body>
<h1>DEBUG Examples</h1>
<div class="ImagePlusCaption">
<div class="Col2">
<p>
<img src="../../graphics/pgm_icon1.gif" border="0" alt="BS1 icon" title="BS1 icon" />
<img src="../../graphics/pgm_icon2.gif" border="0" alt="BS2 icon" title="BS2 icon" />
<img src="../../graphics/pgm_icon2e.gif" border="0" alt="BS2e icon" title="BS2e icon" />
<img src="../../graphics/pgm_icon2sx.gif" border="0" alt="BS2sx icon" title="BS2sx icon" />
<img src="../../graphics/pgm_icon2p.gif" border="0" alt="BS2p icon" title="BS2p icon" />
<img src="../../graphics/pgm_icon2pe.gif" border="0" alt="BS2pe icon" title="BS2pe icon" />
<img src="../../graphics/pgm_icon2px.gif" border="0" alt="BS2px icon" title="BS2px icon" />
</p>
</div>
<p style="text-align: right;">Syntax: <a href="../Commands/DEBUG.htm" target="" title="" alt="" class="MCXref_0" xrefformat="{paratext}">DEBUG</a></p>
<p>&#160;</p>
</div>
<p class="clear">&#160;</p>
<p>&#160;</p><pre class="BScode" xml:space="preserve">' DEBUG.BAS
' Demonstrates the use of the BS1 DEBUG instruction. The BS1 DEBUG defaults
' to decimal output and provides the name of the variable unless directed
' otherwise.
' {$STAMP BS1}
' {$PBASIC 1.0}
SYMBOL addr = B2 ' EEPROM address
SYMBOL char = B3 ' character to print
Messages:
EEPROM ("The Parallax BASIC Stamp 1", 13, 0)
Main:
char = "A"
DEBUG CLS ' clear screen
DEBUG char, CR ' standard decimal output
DEBUG $char, CR ' hex ($)
DEBUG %char, CR ' binary (%)
DEBUG #char, CR ' value only (#)
DEBUG "Your grade is: " ' string
DEBUG #@char, CR, CR ' value only, as ASCII (@)
addr = 0 ' point to message
GOSUB Print_It
DEBUG "The Parallax BASIC Stamp 1" ' same message -- fast
END
' This subroutine can be used to transmit a string stored in EEPROM to
' the DEBUG window. Note that this is very SLOW as for each character the
' entire DEBUG packet (97 bytes!) must be transmitted -- which means that
' you can transmit about five characters per second with this method.
'
' A better alternative to this subroutine is to BRANCH to DEBUG statements
' containing the entire string.
Print_It:
READ addr, char ' get character from EEPROM
addr = addr + 1 ' point to next location
IF char = 0 THEN Print_Done ' if 0, terminate printing
DEBUG #@char ' character to DEBUG window
GOTO Print_It ' loop again
Print_Done:
RETURN
</pre>
<p class="PlainText">&#160;</p>
<p class="PlainText">This next demonstration illustrates sending information to and retrieving information from the Debug Terminal window. Also illustrated is the unique ability to accept any valid numeric format using the NUM modifier. To enter binary or hexadecimal values, the number must be preceded by "%" (binary) or "$" (hex).</p>
<p>NOTE: The example below is written for the BS2 and will run on any of the BS2-family modules. Modify the $STAMP directive (as required) before downloading to the BS2e, BS2sx, BS2p, BS2pe, or BS2px.</p><pre class="BScode" xml:space="preserve">' DEBUG_DEBUGIN.BS2
' This program demonstrates the ability to accept user input from the
' Debug Terminal, and to accept numeric entry in any valid format.
' {$STAMP BS2}
' {$PBASIC 2.5}
myNum VAR Word
Main:
DO
DEBUG CLS, "Enter a any number: " ' prompt user
DEBUGIN SNUM myNum ' accept number in any format
DEBUG CRSRXY, 0, 2, ' display in all formats
SDEC ? myNum,
SHEX ? myNum,
SBIN ? myNum
PAUSE 3000
LOOP ' do it again
END
</pre>
<div class="Col2">
<div class="MasterFoot">
<p MadCap:conditions="BSEconditions.BSEWebHelp (Primary)-INCLUDE"><a href="../../HomeTopics/HomePage.htm">Go to Welcome page</a>
</p>
</div>
</div>
<div class="Col2">
<div class="MasterFoot">
<p style="text-align: right;"><span class="ContactInfoProjectName">BASIC Stamp Help</span> <![CDATA[ ]]><span class="ContactInfoVersion#">Version 2.5.4</span> <![CDATA[ ]]></p>
<p style="text-align: right;">Copyright ©&#160;<span class="ContactInfoCompanyName">Parallax Inc.</span></p>
<p style="text-align: right;"><span class="SystemShortDate">8/8/2012</span>
</p>
</div>
</div>
<script type="text/javascript">/* <![CDATA[ */
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-285614-1']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
/* ]]> */</script>
<script type="text/javascript" src="../../SkinSupport/MadCapBodyEnd.js">
</script>
</body>
</html>