| /Articles/Forth/HTML/CodeAsm/1minus.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/1minus.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/1minus.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 -- n2 ) Arithmetics |
| ; R( -- ) |
| ; optimized decrement (CORE) |
| VE_1MINUS: |
| .db $02, "1-",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_1MINUS |
| XT_1MINUS: |
| .dw PFA_1MINUS |
| PFA_1MINUS: |
| movw zl, tosl |
| sbiw zl, 1 |
| movw tosl, zl |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/1ms.html |
|---|
| 0,0 → 1,108 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/1ms.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/1ms.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Time |
| ; R(--) |
| ; busy waits (almost) exactly 1 millisecond |
| VE_1MS: |
| .db $03, "1ms" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_1MS |
| XT_1MS: |
| .dw PFA_1MS |
| ; error: the additional instructions need appr. |
| ; 4 cpu cycles, Z should be decreased by 1 or 2 |
| PFA_1MS: |
| .set delay_cycles = cpu_frequency / 1000 |
| ldi zl, LOW( delay_cycles / 4 ) |
| ldi zh, HIGH(delay_cycles / 4 ) |
| sbiw zl, 42 ; internal plus forth kernel overhead |
| PFA_1MS1: |
| sbiw zl, 1 |
| brne PFA_1MS1 |
| rjmp DO_NEXT |
| ; : ms 0 do 1ms loop ; |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/1plus.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/1plus.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/1plus.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 -- n2 ) Arithmetics |
| ; R( -- ) |
| ; optimized increment |
| VE_1PLUS: |
| .db $02, "1+",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_1PLUS |
| XT_1PLUS: |
| .dw PFA_1PLUS |
| PFA_1PLUS: |
| movw zl, tosl |
| adiw zl,1 |
| movw tosl, zl |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/2slash.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/2slash.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/2slash.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 -- n2 ) Arithmetics |
| ; R( -- ) |
| ; arithmetic shift right |
| VE_2SLASH: |
| .db $02, "2/", 0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_2SLASH |
| XT_2SLASH: |
| .dw PFA_2SLASH |
| PFA_2SLASH: |
| asr tosh |
| ror tosl |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/2star.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/2star.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/2star.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 -- n2 ) Arithmetics |
| ; R( -- ) |
| ; arithmetic shift left |
| VE_2STAR: |
| .db $02, "2*", 0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_2STAR |
| XT_2STAR: |
| .dw PFA_2STAR |
| PFA_2STAR: |
| lsl tosl |
| rol tosh |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/abort.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/abort.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/abort.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n*x -- ) Exceptions |
| ; R( n*y -- ) |
| ; send an exception -1 |
| VE_ABORT: |
| .db $05, "abort" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_ABORT |
| XT_ABORT: |
| .dw DO_COLON |
| PFA_ABORT: |
| .dw XT_DOLITERAL |
| .dw -1 |
| .dw XT_THROW |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/abortstring.html |
|---|
| 0,0 → 1,117 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/abortstring.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/abortstring.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n*x -- ) Exceptions |
| ; R( n*y -- ) |
| ; check flag. If true emit some text and throw exception -2 |
| VE_ABORTSTRING: |
| .db $86, "abort", $22,0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_ABORTSTRING |
| XT_ABORTSTRING: |
| .dw DO_COLON |
| PFA_ABORTSTRING: |
| ; postpone if |
| .dw XT_COMPILE |
| .dw XT_DOCONDBRANCH |
| .dw XT_HERE |
| .dw XT_COMPILE |
| .dw -1 |
| .dw XT_DOTSTRING |
| .dw XT_COMPILE |
| .dw XT_DOLITERAL |
| .dw XT_COMPILE |
| .dw -2 |
| .dw XT_COMPILE |
| .dw XT_THROW |
| ; then |
| .dw XT_HERE |
| .dw XT_SWAP |
| .dw XT_ISTORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/abs.html |
|---|
| 0,0 → 1,103 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/abs.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/abs.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 -- u1 ) Arithmetics |
| ; R( -- ) |
| ; get the absolute value |
| VE_ABS: |
| .db $03, "abs" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_ABS |
| XT_ABS: |
| .dw DO_COLON |
| PFA_ABS: |
| .dw XT_DUP |
| .dw XT_LESSZERO |
| .dw XT_DOCONDBRANCH |
| .dw PFA_ABS1 |
| .dw XT_NEGATE |
| PFA_ABS1: |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/accept.html |
|---|
| 0,0 → 1,179 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/accept.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/accept.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr n1 -- n2 ) System |
| ; R( -- ) |
| ; reads a line with with KEY into addr until n2 characters are reveived or cr/lf detected. |
| VE_ACCEPT: |
| .db $06, "accept",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_ACCEPT |
| XT_ACCEPT: |
| .dw DO_COLON |
| PFA_ACCEPT: |
| .dw XT_DUP ; ( -- addr n1 n1) |
| .dw XT_TO_R |
| .dw XT_TO_R |
| PFA_ACCEPT1: ; ( -- addr ) |
| .dw XT_KEY ; ( -- addr k ) |
| .dw XT_DUP ; ( -- addr k k ) |
| .dw XT_DOLITERAL |
| .dw 10 |
| .dw XT_NOTEQUAL |
| .dw XT_DOCONDBRANCH |
| .dw PFA_ACCEPT2 |
| .dw XT_DUP |
| .dw XT_DOLITERAL |
| .dw 13 |
| .dw XT_NOTEQUAL |
| .dw XT_DOCONDBRANCH |
| .dw PFA_ACCEPT2 |
| ; check backspace |
| .dw XT_DUP |
| .dw XT_DOLITERAL |
| .dw 8 |
| .dw XT_EQUAL |
| .dw XT_DOCONDBRANCH |
| .dw PFA_ACCEPT3 |
| ; delete previous character |
| ; check beginning of line |
| .dw XT_R_FROM ; ( -- addr k n1 ) |
| .dw XT_R_FETCH ; ( -- addr k n1 n2) |
| .dw XT_OVER ; ( -- addr k n1 n2 n1) |
| .dw XT_TO_R |
| .dw XT_EQUAL ; ( -- addr k f ) |
| .dw XT_DOCONDBRANCH |
| .dw PFA_ACCEPT5 |
| ; we are at the beginning of the line, ignore this character |
| .dw XT_DROP ; ( -- addr ) |
| .dw XT_DOBRANCH |
| .dw PFA_ACCEPT1 |
| PFA_ACCEPT5: |
| .dw XT_DUP ; ( -- addr k k ) |
| .dw XT_EMIT ; ( -- addr k ) |
| .dw XT_SPACE ; ( -- addr k ) |
| .dw XT_EMIT ; ( -- addr ) |
| .dw XT_1MINUS ; ( -- addr--) |
| .dw XT_R_FROM |
| .dw XT_1PLUS |
| .dw XT_DOBRANCH |
| .dw PFA_ACCEPT4 |
| PFA_ACCEPT3: |
| ; check for remaining control characters, replace them with blank |
| .dw XT_DUP ; ( -- addr k k ) |
| .dw XT_BL |
| .dw XT_LESS |
| .dw XT_DOCONDBRANCH |
| .dw PFA_ACCEPT6 |
| .dw XT_DROP |
| .dw XT_BL |
| PFA_ACCEPT6: |
| ; emit the key |
| .dw XT_DUP ; ( -- addr k k) |
| .dw XT_EMIT ; ( -- addr k) |
| ; now store the key |
| .dw XT_OVER ; ( -- addr k addr |
| .dw XT_CSTORE ; ( -- addr) |
| .dw XT_1PLUS ; ( -- addr++) |
| .dw XT_R_FROM ; ( -- addr n1) |
| .dw XT_1MINUS ; ( -- addr n1--) |
| PFA_ACCEPT4: |
| .dw XT_DUP |
| .dw XT_TO_R |
| .dw XT_EQUALZERO |
| .dw XT_DOCONDBRANCH |
| .dw PFA_ACCEPT1 |
| .dw XT_DUP |
| PFA_ACCEPT2: |
| .dw XT_SLASHKEY |
| .dw XT_DROP |
| .dw XT_DROP |
| .dw XT_R_FROM |
| .dw XT_R_FROM |
| .dw XT_SWAP |
| .dw XT_MINUS |
| .dw XT_CR |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/again.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/again.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/again.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr -- ) Control Structure |
| ; R( -- ) |
| ; go back to begin |
| VE_AGAIN: |
| .db $85, "again" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_AGAIN |
| XT_AGAIN: |
| .dw DO_COLON |
| PFA_AGAIN: |
| .dw XT_COMPILE |
| .dw XT_DOBRANCH |
| .dw XT_LRESOLVE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/allot.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/allot.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/allot.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n -- ) System |
| ; R( -- ) |
| ; allocate memory in RAM |
| VE_ALLOT: |
| .db $05, "allot" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_ALLOT |
| XT_ALLOT: |
| .dw DO_COLON |
| PFA_ALLOT: |
| .dw XT_HEAP |
| .dw XT_EFETCH |
| .dw XT_PLUS |
| .dw XT_HEAP |
| .dw XT_ESTORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/amforth.html |
|---|
| 0,0 → 1,211 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> amforth.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> amforth.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ;;;; avr forth |
| ;;;; |
| ;;;; GPL V2 (only) |
| .set pc_ = pc |
| .org $0000 |
| rjmp reset |
| .org pc_ |
| ; main entry point |
| reset: |
| clr zerol |
| clr zeroh |
| ; init first user data area |
| ldi zl, low(heap) |
| ldi zh, high(heap) |
| movw upl, zl |
| ; init return stack pointer |
| ldi temp0,low(ramend) |
| out SPL,temp0 |
| std Z+2, temp0 |
| ldi temp1,high(ramend) |
| out SPH,temp1 |
| std Z+3, temp1 |
| ; init parameter stack pointer |
| ldi yl,low(stackstart) |
| std Z+6, yl |
| ldi yh,high(stackstart) |
| std Z+7, yh |
| ; allocate space for User Area |
| .set heap = heap + USERSIZE |
| ; load Forth IP with starting word |
| ldi xl, low(PFA_COLD) |
| ldi xh, high(PFA_COLD) |
| ; the following should be turnkey-action, but adds a few more words to the the dictionary |
| call_ device_init |
| ; its a far jump... |
| jmp_ DO_NEXT |
| ; ISR routines |
| .include "words/intx.asm" |
| .include "words/usart.asm" |
| ; lower part of the dictionary |
| .include "dict_minimum.asm" |
| .if dict_optional==1 |
| .include "dict_optional.asm" |
| .endif |
| .set lowflashlast = pc |
| ; high part of the dictionary (primitives and words for self programming) |
| .org nrww |
| ; the inner interpreter. |
| DO_DODOES: |
| adiw wl, 1 |
| savetos |
| movw tosl, wl |
| pop wh |
| pop wl |
| push xh |
| push xl |
| movw xl, wl |
| rjmp DO_NEXT |
| DO_COLON: ; 31 CPU cycles to ijmp |
| push xh |
| push xl ; PUSH IP |
| adiw wl, 1 ; set W to PFA |
| movw xl, wl |
| DO_NEXT: ; 24 CPU cycles to ijmp |
| brts DO_INTERRUPT |
| movw zl,xl ; READ IP |
| lsl zl |
| rol zh |
| lpm wl, Z+ |
| lpm wh, Z ; done read IP |
| adiw xl, 1 ; INC IP |
| DO_EXECUTE: ; 12 cpu cycles to ijmp |
| movw zl, wl |
| lsl zl |
| rol zh |
| lpm temp0, Z+ |
| lpm temp1, Z |
| movw zl, temp0 |
| ijmp |
| DO_INTERRUPT: ; 12 cpu cycles to rjmp (+12=24 to ijmp) |
| ; here we deal with interrupts the forth way |
| lds temp0, intcur |
| ldi zl, LOW(intvec) |
| ldi zh, HIGH(intvec) |
| add zl, temp0 |
| adc zh, zeroh |
| ldd wl, Z+0 |
| ldd wh, Z+1 |
| clt ; clear the t flag to indicate that the interrupt is handled |
| rjmp DO_EXECUTE |
| .include "dict_high.asm" |
| .if dict_optional==2 |
| .include "dict_optional.asm" |
| .endif |
| .set flashlast = pc |
| .eseg |
| .dw lowflashlast ; DP |
| .dw VE_HEAD ; HEAD |
| .dw heap ; HEAP |
| .dw edp ; EDP |
| .dw XT_VER ; TURNKEY |
| .dw baud_rate ; BAUDRATE |
| ; 1st free address in EEPROM, see above |
| edp: |
| .cseg |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/and.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/and.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/and.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- n3 ) Logic |
| ; R( -- ) |
| ; bitwise and |
| VE_AND: |
| .db $03, "and" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_AND |
| XT_AND: |
| .dw PFA_AND |
| PFA_AND: |
| ld temp0, Y+ |
| ld temp1, Y+ |
| and tosl, temp0 |
| and tosh, temp1 |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/backslash.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/backslash.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/backslash.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Compiler |
| ; R( -- ) |
| ; everything up to the end of the current line is a comment |
| VE_BACKSLASH: |
| .db $81, "\" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_BACKSLASH |
| XT_BACKSLASH: |
| .dw DO_COLON |
| PFA_BACKSLASH: |
| .dw XT_NUMBERTIB |
| .dw XT_FETCH |
| .dw XT_G_IN |
| .dw XT_STORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/base.html |
|---|
| 0,0 → 1,97 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/base.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/base.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr ) Numeric IO |
| ; R( -- ) |
| ; base fo numeric IO |
| VE_BASE: |
| .db $04, "base",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_BASE |
| XT_BASE: |
| .dw PFA_DOUSER |
| PFA_BASE: |
| .dw 0 |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/begin.html |
|---|
| 0,0 → 1,98 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/begin.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/begin.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr ) Control Structure |
| ; R( -- ) |
| ; start a control structture |
| VE_BEGIN: |
| .db $85, "begin" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_BEGIN |
| XT_BEGIN: |
| .dw DO_COLON |
| PFA_BEGIN: |
| .dw XT_LMARK |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/bl.html |
|---|
| 0,0 → 1,97 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/bl.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/bl.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- 32 ) Character IO |
| ; R( -- ) |
| ; put ascii code of the blank to the stack |
| VE_BL: |
| .db $02, "bl", 0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_BL |
| XT_BL: |
| .dw PFA_DOVARIABLE |
| PFA_BL: |
| .dw 32 |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/brackettick.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/brackettick.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/brackettick.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- XT ) Compiler |
| ; R( -- ) |
| ; what does ' in the interpreter mode do in colon definitions |
| VE_BRACKETTICK: |
| .db $83, "[']" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_BRACKETTICK |
| XT_BRACKETTICK: |
| .dw DO_COLON |
| PFA_BRACKETTICK: |
| .dw XT_COMPILE |
| .dw XT_DOLITERAL |
| .dw XT_TICK |
| .dw XT_COMMA |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/byteswap.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/byteswap.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/byteswap.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 -- n2 ) Arithmetics |
| ; R( -- ) |
| ; swap the bytes of the TOS |
| VE_BYTESWAP: |
| .db $02, "><",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_BYTESWAP |
| XT_BYTESWAP: |
| .dw PFA_BYTESWAP |
| PFA_BYTESWAP: |
| mov temp0, tosh |
| mov tosh, tosl |
| mov tosl, temp0 |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/case.html |
|---|
| 0,0 → 1,98 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/case.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/case.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- 0 ) Control Structure |
| ; R( -- ) |
| ; |
| VE_CASE: |
| .db $84, "case",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_CASE |
| XT_CASE: |
| .dw DO_COLON |
| PFA_CASE: |
| .dw XT_ZERO |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/catch.html |
|---|
| 0,0 → 1,116 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/catch.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/catch.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( xt -- ) Exceptions |
| ; R( -- ) or R( ny -- ) |
| ; execute the XT and restore stack frame if an exception is thrown |
| VE_CATCH: |
| .db $05, "catch" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_CATCH |
| XT_CATCH: |
| .dw DO_COLON |
| PFA_CATCH: |
| ; sp@ >r |
| .dw XT_SP_FETCH |
| .dw XT_TO_R |
| ; handler @ >r |
| .dw XT_HANDLER |
| .dw XT_FETCH |
| .dw XT_TO_R |
| ; rp@ handler ! |
| .dw XT_RP_FETCH |
| .dw XT_HANDLER |
| .dw XT_STORE |
| .dw XT_EXECUTE |
| ; r> handler ! |
| .dw XT_R_FROM |
| .dw XT_HANDLER |
| .dw XT_STORE |
| .dw XT_R_FROM |
| .dw XT_DROP |
| .dw XT_ZERO |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/cfetch.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/cfetch.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/cfetch.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr - c1 ) Memory |
| ; R( -- ) |
| ; fetch a single byte from RAM (or IO or CPU register) |
| VE_CFETCH: |
| .db $02, "c@",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_CFETCH |
| XT_CFETCH: |
| .dw PFA_CFETCH |
| PFA_CFETCH: |
| movw zl, tosl |
| clr tosh |
| ld tosl, Z |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/char-scan.html |
|---|
| 0,0 → 1,124 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/char-scan.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/char-scan.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr1 n1 c -- addr1 n2 ) String |
| ; R( -- ) |
| ; Scan string at addr1/n1 until first c, leaving addr1/n2, char at n2 is last non-c character |
| VE_CSCAN: |
| .db $05, "cscan" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_CSCAN |
| XT_CSCAN: |
| .dw DO_COLON |
| PFA_CSCAN: |
| .dw XT_SWAP ; ( -- addr1 c n1 ) |
| .dw XT_DUP ; ( -- addr1 c n1 n1) |
| .dw XT_TO_R ; ( -- addr1 c n1) |
| .dw XT_ZERO ; ( -- addr1 c n1 0) |
| .dw XT_DODO ; ( -- addr1 c) |
| .dw PFA_CSCAN3 |
| PFA_CSCAN1: |
| .dw XT_OVER ; ( -- addr1 c addr1 ) |
| .dw XT_I ; ( -- addr1 c addr1 i) |
| .dw XT_PLUS ; ( -- addr1 c addr') |
| .dw XT_CFETCH ; ( -- addr1 c c') |
| .dw XT_OVER ; ( -- addr1 c c' c) |
| .dw XT_EQUAL ; ( -- addr1 c f) |
| .dw XT_DOCONDBRANCH ; ( -- addr1 c) |
| .dw PFA_CSCAN2 |
| .dw XT_DROP ; ( -- addr1 ) |
| .dw XT_I ; ( -- addr1 n2) |
| .dw XT_UNLOOP ; ( -- addr1 n2) |
| .dw XT_R_FROM ; ( -- addr1 n2 n1) |
| .dw XT_DROP ; ( -- addr1 n2) |
| .dw XT_EXIT |
| PFA_CSCAN2: |
| .dw XT_DOLOOP |
| .dw PFA_CSCAN1 ; ( -- addr1 c) |
| PFA_CSCAN3: |
| .dw XT_DROP ; ( -- addr1) |
| .dw XT_R_FROM ; ( -- addr1 n1) |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/char-skip.html |
|---|
| 0,0 → 1,117 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/char-skip.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/char-skip.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr1 n1 c -- addr2 n2 ) String |
| ; R( -- ) |
| ; skips leading occurancies in string at addr1/n1 leaving addr2/n2 pointing to the 1st non-c character |
| VE_CSKIP: |
| .db $05, "cskip" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_CSKIP |
| XT_CSKIP: |
| .dw DO_COLON |
| PFA_CSKIP: |
| .dw XT_TO_R ; ( -- addr1 n1 ) |
| PFA_CSKIP1: |
| .dw XT_DUP ; ( -- addr' n' n' ) |
| .dw XT_NOTEQUALZERO |
| .dw XT_DOCONDBRANCH ; ( -- addr' n') |
| .dw PFA_CSKIP2 |
| .dw XT_OVER ; ( -- addr' n' addr' ) |
| .dw XT_CFETCH ; ( -- addr' n' c' ) |
| .dw XT_R_FETCH ; ( -- addr' n' c' c ) |
| .dw XT_EQUAL ; ( -- addr' n' f ) |
| .dw XT_DOCONDBRANCH ; ( -- addr' n') |
| .dw PFA_CSKIP2 |
| .dw XT_DOLITERAL |
| .dw 1 |
| .dw XT_SLASHSTRING |
| .dw XT_DOBRANCH |
| .dw PFA_CSKIP1 |
| PFA_CSKIP2: |
| .dw XT_R_FROM |
| .dw XT_DROP ; ( -- addr2 n2) |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/char.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/char.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/char.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- c ) Tools |
| ; R( -- ) |
| ; first character of the next word |
| VE_CHAR: |
| .db $4, "char",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_CHAR |
| XT_CHAR: |
| .dw DO_COLON |
| PFA_CHAR: |
| .dw XT_BL |
| .dw XT_WORD |
| .dw XT_COUNT |
| .dw XT_DROP |
| .dw XT_CFETCH |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/cmove_g.html |
|---|
| 0,0 → 1,120 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/cmove_g.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/cmove_g.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; (addr-from addr-to n -- ) Memory |
| ; R( -- ) |
| ; copy data in RAM |
| VE_CMOVE_G: |
| .db $06, "cmove>",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_CMOVE_G |
| XT_CMOVE_G: |
| .dw PFA_CMOVE_G |
| PFA_CMOVE_G: |
| push xh |
| push xl |
| movw wl, tosl |
| ld zl, Y+ |
| ld zh, Y+ ; addr-to |
| ld xl, Y+ |
| ld xh, Y+ ; addr-from |
| mov temp0, wh |
| or temp0, wl |
| brbs 1, PFA_CMOVE_G1 |
| add zl, wl |
| adc zh, wh |
| add xl, wl |
| adc xh, wh |
| PFA_CMOVE_G2: |
| ld temp1, -X |
| st -Z, temp1 |
| sbiw wl, 1 |
| brbc 1, PFA_CMOVE_G2 |
| PFA_CMOVE_G1: |
| pop xl |
| pop xh |
| loadtos |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/cold.html |
|---|
| 0,0 → 1,150 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/cold.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/cold.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) System |
| ; R( -- ) |
| ; main entry word. executes turnkey operation and executes quit |
| VE_COLD: |
| .db $04, "cold", 0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_COLD |
| XT_COLD: |
| .dw DO_COLON |
| PFA_COLD: |
| .dw XT_SP0 |
| .dw XT_SP_STORE |
| .dw XT_RP0 |
| .dw XT_RP_STORE |
| ; set IO |
| .dw XT_DOLITERAL |
| .dw XT_TX0 |
| .dw XT_DOLITERAL |
| .dw XT_EMIT |
| .dw XT_DEFERSTORE |
| .dw XT_DOLITERAL |
| .dw XT_TX0Q |
| .dw XT_DOLITERAL |
| .dw XT_EMITQ |
| .dw XT_DEFERSTORE |
| .dw XT_DOLITERAL |
| .dw XT_RX0 |
| .dw XT_DOLITERAL |
| .dw XT_KEY |
| .dw XT_DEFERSTORE |
| .dw XT_DOLITERAL |
| .dw XT_RX0Q |
| .dw XT_DOLITERAL |
| .dw XT_KEYQ |
| .dw XT_DEFERSTORE |
| .dw XT_DOLITERAL |
| .dw XT_NOOP |
| .dw XT_DOLITERAL |
| .dw XT_SLASHKEY |
| .dw XT_DEFERSTORE |
| .dw XT_DOLITERAL |
| .dw XT_NOOP |
| .dw XT_DOLITERAL |
| .dw XT_PAUSE |
| .dw XT_DEFERSTORE |
| .dw XT_ZERO |
| .dw XT_STATE |
| .dw XT_STORE |
| .dw XT_BAUD0 |
| .dw XT_USART0 |
| .dw XT_INTON |
| .dw XT_TURNKEY |
| .dw XT_QUIT |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/colon-noname.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/colon-noname.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/colon-noname.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- xt ) Compiler |
| ; R( -- ) |
| ; create unnamed entry in the dictionary |
| VE_COLONNONAME: |
| .db $7, ":noname" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_COLONNONAME |
| XT_COLONNONAME: |
| .dw DO_COLON |
| PFA_COLONNONAME: |
| .dw XT_HERE |
| .dw XT_COMPILE |
| .dw DO_COLON |
| .dw XT_RBRACKET |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/colon.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/colon.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/colon.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Compiler |
| ; R( -- ) |
| ; create named entry in the dictionary |
| VE_COLON: |
| .db $1, ":" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_COLON |
| XT_COLON: |
| .dw DO_COLON |
| PFA_COLON: |
| .dw XT_DOCREATE |
| .dw XT_COMPILE |
| .dw DO_COLON |
| .dw XT_RBRACKET |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/comma.html |
|---|
| 0,0 → 1,104 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/comma.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/comma.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n -- ) Dictionary |
| ; R( -- ) |
| ; compile 16 bit into flash at here. |
| VE_COMMA: |
| .db $01, $2c ; , |
| .dw VE_HEAD |
| .set VE_HEAD = VE_COMMA |
| XT_COMMA: |
| .dw DO_COLON |
| PFA_COMMA: |
| .dw XT_HERE |
| .dw XT_ISTORE |
| .dw XT_DP |
| .dw XT_EFETCH |
| .dw XT_1PLUS |
| .dw XT_DP |
| .dw XT_ESTORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/compile.html |
|---|
| 0,0 → 1,104 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/compile.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/compile.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Dictionary |
| ; R( -- ) |
| ; copy the next flash cell to HERE |
| VE_COMPILE: |
| .db $07, "compile" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_COMPILE |
| XT_COMPILE: |
| .dw DO_COLON |
| PFA_COMPILE: |
| .dw XT_R_FROM |
| .dw XT_DUP |
| .dw XT_1PLUS |
| .dw XT_TO_R |
| .dw XT_IFETCH |
| .dw XT_COMMA |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/constant.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/constant.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/constant.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n -- ) Compiler |
| ; R( -- ) |
| ; create a named constant |
| VE_CONSTANT: |
| .db $08, "constant",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_CONSTANT |
| XT_CONSTANT: |
| .dw DO_COLON |
| PFA_CONSTANT: |
| .dw XT_DOCREATE |
| .dw XT_COMPILE |
| .dw PFA_DOVARIABLE |
| .dw XT_COMMA |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/count.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/count.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/count.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr -- addr+1 n) String |
| ; R( -- ) |
| ; addr is the address of a counted string in RAM |
| VE_COUNT: |
| .db $05, "count" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_COUNT |
| XT_COUNT: |
| .dw DO_COLON |
| PFA_COUNT: |
| .dw XT_DUP |
| .dw XT_1PLUS |
| .dw XT_SWAP |
| .dw XT_CFETCH |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/cr.html |
|---|
| 0,0 → 1,103 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/cr.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/cr.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Character IO |
| ; R( -- ) |
| ; emits CR/LF |
| VE_CR: |
| .db $02, "cr", 0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_CR |
| XT_CR: |
| .dw DO_COLON |
| PFA_CR: |
| .dw XT_DOLITERAL |
| .dw 13 |
| .dw XT_EMIT |
| .dw XT_DOLITERAL |
| .dw 10 |
| .dw XT_EMIT |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/create.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/create.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/create.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Dictionary |
| ; R( -- ) |
| ; create a complete dictionary header. |
| VE_CREATE: |
| .db $6, "create",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_CREATE |
| XT_CREATE: |
| .dw DO_COLON |
| PFA_CREATE: |
| .dw XT_DOCREATE |
| .dw XT_COMPILE |
| .dw XT_DOCONSTANT |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/cstore.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/cstore.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/cstore.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( c addr -- ) Memory |
| ; R( -- ) |
| ; store a byte to RAM address |
| VE_CSTORE: |
| .db $02, "c!",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_CSTORE |
| XT_CSTORE: |
| .dw PFA_CSTORE |
| PFA_CSTORE: |
| movw zl, tosl |
| loadtos |
| st Z, tosl |
| loadtos |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/d-2slash.html |
|---|
| 0,0 → 1,105 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/d-2slash.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/d-2slash.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( d1 -- d2 ) Arithmetics |
| ; R( -- ) |
| ; shift a double cell value right |
| VE_D2SLASH: |
| .db $03, "d2/" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_D2SLASH |
| XT_D2SLASH: |
| .dw PFA_D2SLASH |
| PFA_D2SLASH: |
| ld temp0, Y+ |
| ld temp1, Y+ |
| asr temp1 |
| ror temp0 |
| ror tosh |
| ror tosl |
| st -Y, temp1 |
| st -Y, temp0 |
| jmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/d-2star.html |
|---|
| 0,0 → 1,105 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/d-2star.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/d-2star.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( d1 -- d2 ) Arithmetics |
| ; R( -- ) |
| ; shift a double cell left |
| VE_D2STAR: |
| .db $03, "d2*" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_D2STAR |
| XT_D2STAR: |
| .dw PFA_D2STAR |
| PFA_D2STAR: |
| ld temp0, Y+ |
| ld temp1, Y+ |
| lsl tosl |
| rol tosh |
| rol temp0 |
| rol temp1 |
| st -Y, temp1 |
| st -Y, temp0 |
| jmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/d-greater.html |
|---|
| 0,0 → 1,109 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/d-greater.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/d-greater.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( d1 d2 -- flag ) Compare |
| ; R( -- ) |
| ; compares two values (signed) |
| VE_DGREATER: |
| .db $02, "d>",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_DGREATER |
| XT_DGREATER: |
| .dw PFA_DGREATER |
| PFA_DGREATER: |
| ld temp0, Y+ |
| ld temp1, Y+ |
| ld temp2, Y+ |
| ld temp3, Y+ |
| ld temp4, Y+ |
| ld temp5, Y+ |
| cp temp2, tosl |
| cpc temp3, tosh |
| cpc temp4, temp0 |
| cpc temp5, temp1 |
| rjmp PFA_GREATERDONE |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/d-invert.html |
|---|
| 0,0 → 1,105 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/d-invert.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/d-invert.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( d1 -- d2) Arithmetics |
| ; R( -- ) |
| ; flip all bits in the double cell value |
| VE_DINVERT: |
| .db $07, "dinvert" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_DINVERT |
| XT_DINVERT: |
| .dw PFA_DINVERT |
| PFA_DINVERT: |
| ld temp0, Y+ |
| ld temp1, Y+ |
| com tosl |
| com tosh |
| com temp0 |
| com temp1 |
| st -Y, temp1 |
| st -Y, temp0 |
| jmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/d-less.html |
|---|
| 0,0 → 1,109 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/d-less.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/d-less.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( d1 d2 -- flasg) Compare |
| ; R( -- ) |
| ; compare two values |
| VE_DLESS: |
| .db $02, "d<",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_DLESS |
| XT_DLESS: |
| .dw PFA_DLESS |
| PFA_DLESS: |
| ld temp0, Y+ |
| ld temp1, Y+ |
| ld temp2, Y+ |
| ld temp3, Y+ |
| ld temp4, Y+ |
| ld temp5, Y+ |
| cp temp2, tosl |
| cpc temp3, tosh |
| cpc temp4, temp0 |
| cpc temp5, temp1 |
| rjmp PFA_LESSDONE |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/d-minus.html |
|---|
| 0,0 → 1,112 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/d-minus.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/d-minus.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( d1 d2 -- d3 ) Arithmetics |
| ; R( -- ) |
| ; subtract double cell values |
| VE_DMINUS: |
| .db $02, "d-",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_DMINUS |
| XT_DMINUS: |
| .dw PFA_DMINUS |
| PFA_DMINUS: |
| ld temp4, Y+ |
| ld temp5, Y+ |
| ld temp6, Y+ |
| ld temp7, Y+ |
| ld temp2, Y+ |
| ld temp3, Y+ |
| sub tosl, temp4 |
| sbc tosh, temp5 |
| sbc temp2, temp6 |
| sbc temp3, temp7 |
| st -Y, temp3 |
| st -Y, temp2 |
| jmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/d-plus.html |
|---|
| 0,0 → 1,112 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/d-plus.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/d-plus.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( d1 d2 -- d3) Arithmetics |
| ; R( -- ) |
| ; add double cell values |
| VE_DPLUS: |
| .db $02, "d+",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_DPLUS |
| XT_DPLUS: |
| .dw PFA_DPLUS |
| PFA_DPLUS: |
| ld temp2, Y+ |
| ld temp3, Y+ |
| ld temp4, Y+ |
| ld temp5, Y+ |
| ld temp6, Y+ |
| ld temp7, Y+ |
| add tosl, temp4 |
| adc tosh, temp5 |
| adc temp2, temp6 |
| adc temp3, temp7 |
| st -Y, temp3 |
| st -Y, temp2 |
| jmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/d_to_s.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/d_to_s.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/d_to_s.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( d1 -- n1 ) Conversion |
| ; R( -- ) |
| ; shrink double cell value to single cell. |
| VE_D2S: |
| .db $03, "d>s" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_D2S |
| XT_D2S: |
| .dw DO_COLON |
| PFA_D2S: |
| .dw XT_SWAP |
| .dw XT_DROP |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/decimal.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/decimal.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/decimal.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Numeric IO |
| ; R( -- ) |
| ; set base to 10 (decimal) |
| VE_DECIMAL: |
| .db $07, "decimal" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_DECIMAL |
| XT_DECIMAL: |
| .dw DO_COLON |
| PFA_DECIMAL: |
| .dw XT_DOLITERAL |
| .dw 10 |
| .dw XT_BASE |
| .dw XT_STORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/defer-fetch.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/defer-fetch.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/defer-fetch.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( xt1 -- xt2 ) System |
| ; R( -- ) |
| ; returns the XT assoziates with the given XT |
| VE_DEFERFETCH: |
| .db $06, "defer@",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_DEFERFETCH |
| XT_DEFERFETCH: |
| .dw DO_COLON |
| PFA_DEFERFETCH: |
| .dw XT_DUP |
| .dw XT_1PLUS ; >body |
| .dw XT_1PLUS |
| .dw XT_IFETCH |
| .dw XT_EXECUTE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/defer-store.html |
|---|
| 0,0 → 1,104 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/defer-store.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/defer-store.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( xt1 xt2 -- ) System |
| ; R( -- ) |
| ; stores xt1 as the xt to be executed when xt2 is called |
| VE_DEFERSTORE: |
| .db $06, "defer!",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_DEFERSTORE |
| XT_DEFERSTORE: |
| .dw DO_COLON |
| PFA_DEFERSTORE: |
| .dw XT_DUP |
| .dw XT_DOLITERAL |
| .dw 3 |
| .dw XT_PLUS ; >body 2 + |
| .dw XT_IFETCH |
| .dw XT_EXECUTE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/depth.html |
|---|
| 0,0 → 1,103 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/depth.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/depth.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- n ) Stack |
| ; R( -- ) |
| ; currently used data stack size in cells |
| VE_DEPTH: |
| .db $05, "depth" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_DEPTH |
| XT_DEPTH: |
| .dw DO_COLON |
| PFA_DEPTH: |
| .dw XT_SP0 |
| .dw XT_SP_FETCH |
| .dw XT_MINUS |
| .dw XT_1MINUS |
| .dw XT_1MINUS |
| .dw XT_2SLASH |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/dict_high.html |
|---|
| 0,0 → 1,183 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> dict_high.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> dict_high.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; this part of the dictionay has to fit into the nrww flash |
| ; section together with the forth inner interpreter |
| .include "words/exit.asm" |
| .include "words/execute.asm" |
| .include "words/dobranch.asm" |
| .include "words/docondbranch.asm" |
| .include "words/estore.asm" |
| .include "words/efetch.asm" |
| .include "words/sleep.asm" |
| .include "words/wdr.asm" |
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
| .include "words/doliteral.asm" |
| .include "words/dovariable.asm" |
| .include "words/doconstant.asm" |
| .include "words/douser.asm" |
| .include "words/fetch.asm" |
| .include "words/store.asm" |
| .include "words/cstore.asm" |
| .include "words/cfetch.asm" |
| ;;;;;;;;;;;;;;;;;;;;;;;;; |
| .include "words/dup.asm" |
| .include "words/qdup.asm" |
| .include "words/swap.asm" |
| .include "words/over.asm" |
| .include "words/drop.asm" |
| .include "words/rot.asm" |
| ;;;;;;;;;;;;;;;;;;;;;;;;; |
| .include "words/r_from.asm" |
| .include "words/to_r.asm" |
| .include "words/r_fetch.asm" |
| ;;;;;;;;;;;;;;;;;;;;;;;; |
| .include "words/notequal.asm" |
| .include "words/notequalzero.asm" |
| .include "words/equal.asm" |
| .include "words/equalzero.asm" |
| .include "words/less.asm" |
| .include "words/greater.asm" |
| .include "words/lesszero.asm" |
| .include "words/greaterzero.asm" |
| .include "words/uless.asm" |
| .include "words/ugreater.asm" |
| .include "words/d-greater.asm" |
| .include "words/d-less.asm" |
| .include "words/log2.asm" |
| .include "words/minus.asm" |
| .include "words/plus.asm" |
| .include "words/star.asm" |
| .include "words/mstar.asm" |
| .include "words/umslashmod.asm" |
| .include "words/invert.asm" |
| .include "words/2slash.asm" |
| .include "words/2star.asm" |
| .include "words/and.asm" |
| .include "words/or.asm" |
| .include "words/xor.asm" |
| .include "words/not.asm" |
| .include "words/1plus.asm" |
| .include "words/1minus.asm" |
| .include "words/lshift.asm" |
| .include "words/rshift.asm" |
| .include "words/plusstore.asm" |
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
| .include "words/rpfetch.asm" |
| .include "words/rpstore.asm" |
| .include "words/spfetch.asm" |
| .include "words/spstore.asm" |
| .include "words/dodo.asm" |
| .include "words/doqdo.asm" |
| .include "words/i.asm" |
| .include "words/j.asm" |
| .include "words/doloop.asm" |
| .include "words/doplusloop.asm" |
| .include "words/unloop.asm" |
| ;;;;;;;;;;;;;;;;;;;;;;;;;;; |
| .include "words/ifetch.asm" |
| .include "words/istore.asm" |
| ;;;;;;;;;;;;;;;;;;;;;;;;;;; |
| .include "words/cmove_g.asm" |
| .include "words/byteswap.asm" |
| .include "words/1ms.asm" |
| .include "words/zero.asm" |
| .include "words/up.asm" |
| .include "words/s_to_d.asm" |
| .include "words/d_to_s.asm" |
| .include "words/d-2slash.asm" |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/dict_minimum.html |
|---|
| 0,0 → 1,249 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> dict_minimum.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> dict_minimum.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
| ; header |
| ; +--1+x--++--2--+--2----0+x...-- |
| ; | VOC | L | XT | PF |
| ; +-------#-----+-----+----....-- |
| ; VOC (flags may be inverted to be flash friendly) |
| ; Bit |
| ; 7 6 5 4-0 |
| ; I U U Length |
| ; I = Immediate |
| ; U = Unused |
| ; Length = length of word name (1..31) |
| ; Length number of bytes, filled to next cell |
| ; L |
| ; Link to previos Dictionary entry or zero for first entry |
| ; XT |
| ; Address of Executable Code |
| ; PF |
| ; Parameter Field (List of XT, Constant Value etc) |
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
| .include "words/f_cpu.asm" |
| .include "words/state.asm" |
| .include "words/base.asm" |
| .include "words/g_in.asm" |
| .include "words/sharptib.asm" |
| .include "words/tib.asm" |
| .include "words/pad.asm" |
| .include "words/emit.asm" |
| .include "words/emitq.asm" |
| .include "words/key.asm" |
| .include "words/keyq.asm" |
| .include "words/slashkey.asm" |
| .include "words/dp.asm" |
| .include "words/head.asm" |
| .include "words/here.asm" |
| .include "words/allot.asm" |
| .include "words/abort.asm" |
| .include "words/literal.asm" |
| .include "words/comma.asm" |
| .include "words/g_mark.asm" |
| .include "words/g_resolve.asm" |
| .include "words/l_mark.asm" |
| .include "words/l_resolve.asm" |
| .include "words/if.asm" |
| .include "words/else.asm" |
| .include "words/then.asm" |
| .include "words/begin.asm" |
| .include "words/while.asm" |
| .include "words/repeat.asm" |
| .include "words/until.asm" |
| .include "words/again.asm" |
| .include "words/do.asm" |
| .include "words/loop.asm" |
| .include "words/plusloop.asm" |
| .include "words/docreate.asm" |
| .include "words/create.asm" |
| .include "words/does.asm" |
| .include "words/colon.asm" |
| .include "words/colon-noname.asm" |
| .include "words/semicolon.asm" |
| .include "words/rightbracket.asm" |
| .include "words/leftbracket.asm" |
| .include "words/variable.asm" |
| .include "words/constant.asm" |
| .include "words/user.asm" |
| .include "words/backslash.asm" |
| .include "words/lparenthesis.asm" |
| .include "words/recurse.asm" |
| .include "words/immediate.asm" |
| .include "words/compile.asm" |
| .include "words/brackettick.asm" |
| .include "words/decimal.asm" |
| .include "words/hex.asm" |
| .include "words/bl.asm" |
| .include "words/edp.asm" |
| .include "words/heap.asm" |
| .include "words/turnkey.asm" |
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
| .include "words/starslashmod.asm" |
| .include "words/slashmod.asm" |
| .include "words/starslash.asm" |
| .include "words/uslashmod.asm" |
| .include "words/ustarslashmod.asm" |
| .include "words/negate.asm" |
| .include "words/slash.asm" |
| .include "words/mod.asm" |
| .include "words/abs.asm" |
| .include "words/min.asm" |
| .include "words/max.asm" |
| ;;;;;;;;;;;;;;;;;;;;;; |
| .include "words/hld.asm" |
| .include "words/hold.asm" |
| .include "words/l_sharp.asm" ; <# |
| .include "words/sharp.asm" |
| .include "words/sharp_s.asm" |
| .include "words/sharp_g.asm" ; #> |
| .include "words/sign.asm" |
| .include "words/dot.asm" |
| .include "words/digit.asm" |
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
| .include "words/sliteral.asm" |
| .include "words/scomma.asm" |
| .include "words/itype.asm" |
| .include "words/icount.asm" |
| .include "words/cr.asm" |
| .include "words/space.asm" |
| .include "words/count.asm" |
| .include "words/type.asm" |
| .include "words/tick.asm" |
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
| .include "words/handler.asm" |
| .include "words/catch.asm" |
| .include "words/throw.asm" |
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
| .include "words/char-skip.asm" |
| .include "words/accept.asm" |
| .include "words/refill.asm" |
| .include "words/char.asm" |
| .include "words/number.asm" |
| .include "words/parse.asm" |
| .include "words/char-scan.asm" |
| .include "words/source.asm" |
| .include "words/slashstring.asm" |
| .include "words/word.asm" |
| .include "words/quit.asm" |
| .include "words/pause.asm" |
| .include "words/cold.asm" |
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
| .include "words/sp0.asm" |
| .include "words/rp0.asm" |
| .include "words/depth.asm" |
| .include "words/interpret.asm" |
| .include "words/ver.asm" |
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
| .include "words/noop.asm" |
| .include "words/unused.asm" |
| .include "words/value.asm" |
| .include "words/to.asm" |
| .include "words/edefer-fetch.asm" |
| .include "words/edefer-store.asm" |
| .include "words/rdefer-fetch.asm" |
| .include "words/rdefer-store.asm" |
| .include "words/udefer-fetch.asm" |
| .include "words/udefer-store.asm" |
| .include "words/do-defer.asm" |
| .include "words/find.asm" |
| .include "words/defer-store.asm" |
| .include "words/defer-fetch.asm" |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/dict_optional.html |
|---|
| 0,0 → 1,113 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> dict_optional.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> dict_optional.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; this dictionary contains optional words |
| ; they may be moved to the core dictionary if needed |
| .include "words/case.asm" |
| .include "words/of.asm" |
| .include "words/endof.asm" |
| .include "words/endcase.asm" |
| .include "words/d-2star.asm" |
| .include "words/d-plus.asm" |
| .include "words/d-minus.asm" |
| .include "words/d-invert.asm" |
| .include "words/udot.asm" |
| .include "words/dot-s.asm" |
| .include "words/idump.asm" |
| .include "words/abortstring.asm" |
| .include "words/dotstring.asm" |
| .include "words/squote.asm" |
| .include "words/words.asm" |
| .include "words/edefer.asm" |
| .include "words/rdefer.asm" |
| .include "words/is.asm" |
| .include "words/leave.asm" |
| .include "words/qdo.asm" |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/digit.html |
|---|
| 0,0 → 1,141 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/digit.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/digit.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( c base -- number flag ) Numeric IO |
| ; R( -- ) |
| ; convert character to number, set flag if successful |
| VE_DIGIT: |
| .db $05, "digit" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_DIGIT |
| XT_DIGIT: |
| .dw DO_COLON |
| PFA_DIGIT: |
| .dw XT_SWAP |
| ; [char] 0 - |
| .dw XT_DOLITERAL |
| .dw $30 ; '0' |
| .dw XT_MINUS |
| ; dup 9 > |
| .dw XT_DUP |
| .dw XT_DOLITERAL |
| .dw 9 |
| .dw XT_GREATER |
| .dw XT_DOCONDBRANCH |
| .dw PFA_DIGIT1 |
| ; if |
| ; we had a non-numeric character |
| .dw XT_DOLITERAL |
| .dw $df |
| .dw XT_AND ; make uppercase |
| .dw XT_DOLITERAL |
| .dw 7 |
| .dw XT_MINUS ; finally 'a' -> 10 |
| .dw XT_DUP |
| .dw XT_DOLITERAL |
| .dw 10 |
| .dw XT_LESS |
| .dw XT_DOCONDBRANCH |
| .dw PFA_DIGIT1 |
| ; invalid character |
| .dw XT_DROP |
| .dw XT_ZERO |
| .dw XT_EXIT |
| PFA_DIGIT1: |
| ; ( b n -- n f) |
| ; compare with the limits: less than base and and not negative |
| .dw XT_SWAP |
| .dw XT_OVER |
| .dw XT_GREATER |
| .dw XT_OVER |
| .dw XT_LESSZERO |
| .dw XT_EQUALZERO |
| .dw XT_AND |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/do-defer.html |
|---|
| 0,0 → 1,105 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/do-defer.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/do-defer.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( i*x -- j*x ) |
| ; R( -- ) |
| ; runtime of defer |
| ;VE_DOEDEFER: |
| ; .db $0a, "(defer)", 0 |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_DOEDEFER |
| XT_DODEFER: |
| .dw PFA_DODEFER |
| PFA_DODEFER: |
| call_ DO_DODOES |
| .dw XT_DUP |
| .dw XT_1MINUS |
| .dw XT_SWAP |
| .dw XT_1PLUS |
| .dw XT_IFETCH |
| .dw XT_EXECUTE |
| .dw XT_EXECUTE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/do.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/do.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/do.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr ) Control Structure |
| ; R( -- ) |
| ; start do .. [+]loop |
| VE_DO: |
| .db $82, "do",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_DO |
| XT_DO: |
| .dw DO_COLON |
| PFA_DO: |
| .dw XT_COMPILE |
| .dw XT_DODO |
| .dw XT_GMARK |
| .dw XT_LMARK |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/dobranch.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/dobranch.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/dobranch.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) |
| ; R( -- ) |
| ; runtime portion of branch |
| ;VE_DOBRANCH: |
| ; .db $08, "(branch)",0 |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_DOBRANCH |
| XT_DOBRANCH: |
| .dw PFA_DOBRANCH |
| PFA_DOBRANCH: |
| movw zl, xl |
| lsl zl |
| rol zh |
| lpm xl, Z+ |
| lpm xh, Z |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/docondbranch.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/docondbranch.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/docondbranch.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( f -- ) |
| ; R( -- ) |
| ; runtime portion of ?branch |
| ;VE_DOCONDBRANCH: |
| ; .db $09, "(?branch)" |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_DOCONDBRANCH |
| XT_DOCONDBRANCH: |
| .dw PFA_DOCONDBRANCH |
| PFA_DOCONDBRANCH: |
| or tosh, tosl |
| loadtos |
| brbs 1, PFA_DOBRANCH ; 1 is z flag; if tos is zero (false), do the branch |
| adiw xl, 1 |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/doconstant.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/doconstant.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/doconstant.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr ) |
| ; R( -- ) |
| ; place PFA on TOS |
| ;VE_DOCONSTAN: |
| ; .db $0a, "(constant)", 0 |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_DOCONSTANT |
| XT_DOCONSTANT: |
| .dw PFA_DOCONSTANT |
| PFA_DOCONSTANT: |
| adiw wl, 1 |
| savetos |
| movw tosl, wl |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/docreate.html |
|---|
| 0,0 → 1,118 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/docreate.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/docreate.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) |
| ; R( -- ) |
| ; creates the vocabulary header without XT and data field (PF) |
| ;VE_DOCREATE: |
| ; .db $08, "(create)",0 |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_DOCREATE |
| XT_DOCREATE: |
| .dw DO_COLON |
| PFA_DOCREATE: |
| .dw XT_HERE ; ( -- here) |
| .dw XT_BL |
| .dw XT_WORD ; ( -- here addr) |
| .dw XT_COUNT ; ( -- here addr' n) |
| .dw XT_DUP ; ( -- here addr' n n ) |
| .dw XT_GREATERZERO ;( -- here addr' n f ) |
| .dw XT_DOCONDBRANCH |
| .dw PFA_DOCREATE4 ; ( -- here addr' n ) |
| .dw XT_SCOMMA |
| ; make voc link |
| .dw XT_HEAD ; ( -- here head ) |
| .dw XT_EFETCH |
| .dw XT_COMMA ; ( -- here) |
| .dw XT_HEAD ; ( -- here head ) |
| .dw XT_ESTORE ; ( -- ) |
| .dw XT_EXIT |
| PFA_DOCREATE4: |
| .dw XT_DROP |
| .dw XT_DROP |
| .dw XT_DROP |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/dodo.html |
|---|
| 0,0 → 1,116 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/dodo.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/dodo.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( limit counter -- ) |
| ; R( -- limit counter ) |
| ; runtime of do |
| ;VE_DODO: |
| ; .db 4, "(do)", 0 |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_DODO |
| XT_DODO: |
| .dw PFA_DODO |
| PFA_DODO: |
| ; put the content of the next flash cell on return stack |
| ; it is the address of the instruction _after_ the (+)loop |
| movw zl, xl |
| lsl zl |
| rol zh |
| lpm temp0, Z+ |
| lpm temp1, Z+ |
| adiw xl, 1 ; adjust to NEXT+1 = jump over <mark (for leave) |
| ld temp2, Y+ |
| ld temp3, Y+ |
| PFA_DODO1: |
| push temp1 |
| push temp0 |
| push temp3 |
| push temp2 |
| push tosh |
| push tosl |
| loadtos |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/does.html |
|---|
| 0,0 → 1,129 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/does.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/does.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Compiler |
| ; R( -- ) |
| ; |
| VE_DOES: |
| .db $85, "does>" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_DOES |
| XT_DOES: |
| .dw DO_COLON |
| PFA_DOES: |
| .dw XT_DOLITERAL |
| .dw XT_DODOES |
| .dw XT_COMMA |
| .dw XT_COMPILE |
| .dw $940e ; code for call |
| .dw XT_COMPILE; the address of this cell is used by (does>) |
| .dw DO_DODOES |
| .dw XT_EXIT |
| ; ( -- ) |
| ;R( -- ) |
| ; runtime of does> |
| ;VE_DODOES: |
| ; .db $07, "(does>)" |
| ; .set VE_HEAD = VE_DODOES |
| XT_DODOES: |
| .dw DO_COLON |
| PFA_DODOES: |
| .dw XT_R_FROM |
| .dw XT_HEAD |
| .dw XT_EFETCH |
| .dw XT_DUP |
| .dw XT_IFETCH |
| .dw XT_DOLITERAL |
| .dw $001f |
| .dw XT_AND |
| .dw XT_2SLASH |
| .dw XT_1PLUS |
| .dw XT_PLUS |
| .dw XT_1PLUS |
| .dw XT_ISTORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/doliteral.html |
|---|
| 0,0 → 1,113 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/doliteral.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/doliteral.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- n1 ) |
| ; R( -- ) |
| ; runtime of literal |
| ;VE_DOLITERAL: |
| ; .db $09, "(literal)" |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_DOLITERAL |
| XT_DOLITERAL: |
| .dw DO_COLON |
| PFA_DOLITERAL: |
| .dw XT_R_FROM |
| .dw XT_DUP |
| .dw XT_1PLUS |
| .dw XT_TO_R |
| .dw XT_IFETCH |
| .dw XT_EXIT |
| ; .dw PFA_DOLITERAL |
| ;PFA_DOLITERAL: |
| ; savetos |
| ; movw zl, xl |
| ; lsl zl |
| ; rol zh |
| ; lpm tosl, Z+ |
| ; lpm tosh, Z |
| ; adiw xl, 1 |
| ; rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/doloop.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/doloop.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/doloop.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) |
| ; R(limit counter -- limit counter+1|) |
| ; runtime of loop |
| ;VE_DOLOOP: |
| ; .db 6, "(loop)", 0 |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_DOLOOP |
| XT_DOLOOP: |
| .dw PFA_DOLOOP |
| PFA_DOLOOP: |
| pop zl |
| pop zh |
| adiw zl,1 |
| rjmp PFA_DOPLUSLOOP4 |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/doplusloop.html |
|---|
| 0,0 → 1,124 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/doplusloop.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/doplusloop.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 -- ) |
| ; R(llimit counter -- limit counter+n1|) |
| ; runtime of +loop |
| ;VE_DOPLUSLOOP: |
| ; .db 7, "(+loop)" |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_DOPLUSLOOP |
| XT_DOPLUSLOOP: |
| .dw PFA_DOPLUSLOOP |
| PFA_DOPLUSLOOP: |
| pop zl |
| pop zh |
| add zl, tosl |
| adc zh, tosh |
| loadtos |
| PFA_DOPLUSLOOP4: ; entry point for (loop) |
| pop temp2 |
| pop temp3 |
| cp zl, temp2 |
| cpc zh, temp3 |
| sbrs tosh, 7 ; if msb is set, increment is negative. in that case skip the next instruction |
| rjmp PFA_DOPLUSLOOP2 ; jump to test for positive overflow |
| brlt PFA_DOPLUSLOOP1 ; exit if underflow |
| rjmp PFA_DOPLUSLOOP3 |
| PFA_DOPLUSLOOP2: |
| brge PFA_DOPLUSLOOP1 ; exit if overflow |
| PFA_DOPLUSLOOP3: |
| ; next iteration |
| push temp3 |
| push temp2 |
| push zh |
| push zl |
| rjmp PFA_DOBRANCH ; read next cell from dictionary and jump to its destination |
| PFA_DOPLUSLOOP1: |
| pop temp0 |
| pop temp1 ; remove leave destination |
| adiw xl, 1 ; skip branch-back address |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/doqdo.html |
|---|
| 0,0 → 1,114 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/doqdo.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/doqdo.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( limit counter -- ) |
| ; R( -- limit counter ) |
| ; runtime of do |
| ;VE_DODO: |
| ; .db 4, "(do)", 0 |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_DODO |
| XT_DOQDO: |
| .dw PFA_DOQDO |
| PFA_DOQDO: |
| ; put the content of the next flash cell on return stack |
| ; it is the address of the instruction _after_ the (+)loop |
| movw zl, xl |
| lsl zl |
| rol zh |
| lpm temp0, Z+ |
| lpm temp1, Z+ |
| adiw xl, 1 ; adjust to NEXT+1 = jump over <mark (for leave) |
| ld temp2, Y+ |
| ld temp3, Y+ |
| ; now check for equality |
| cp tosl, temp2 |
| cpc tosh, temp3 |
| brne PFA_DODO1 |
| ; both values are the same -> skip to loop |
| movw xl, temp0 |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/dot-s.html |
|---|
| 0,0 → 1,122 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/dot-s.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/dot-s.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Tools |
| ; R( -- ) |
| ; stack dump |
| VE_DOTS: |
| .db $02, ".s",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_DOTS |
| XT_DOTS: |
| .dw DO_COLON |
| PFA_DOTS: |
| .dw XT_SP_FETCH |
| .dw XT_DEPTH |
| .dw XT_1MINUS |
| .dw XT_QDUP |
| .dw XT_DOCONDBRANCH |
| .dw PFA_DOTS2 |
| .dw XT_ZERO |
| .dw XT_DODO |
| .dw PFA_DOTS2 |
| PFA_DOTS1: |
| .dw XT_DUP |
| .dw XT_I |
| .dw XT_DUP |
| .dw XT_UDOT |
| .dw XT_2STAR |
| .dw XT_PLUS |
| .dw XT_DUP |
| .dw XT_UDOT |
| .dw XT_FETCH |
| .dw XT_UDOT |
| .dw XT_CR |
| .dw XT_DOLOOP |
| .dw PFA_DOTS1 |
| PFA_DOTS2: |
| .dw XT_DROP |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/dot.html |
|---|
| 0,0 → 1,108 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/dot.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/dot.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n -- ) Numeric IO |
| ; R( -- ) |
| ; prints TOS in free number format |
| VE_DOT: |
| .db $01, "." |
| .dw VE_HEAD |
| .set VE_HEAD = VE_DOT |
| XT_DOT: |
| .dw DO_COLON |
| PFA_DOT: |
| .dw XT_DUP |
| .dw XT_ABS |
| .dw XT_S2D |
| .dw XT_L_SHARP |
| .dw XT_SHARP_S |
| .dw XT_ROT |
| .dw XT_SIGN |
| .dw XT_BL |
| .dw XT_HOLD |
| .dw XT_SHARP_G |
| .dw XT_TYPE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/dotstring.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/dotstring.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/dotstring.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Compiler |
| ; R( -- ) |
| ; compiles string into dictionary to be typed at runtime |
| VE_DOTSTRING: |
| .db $82, ".",$22,0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_DOTSTRING |
| XT_DOTSTRING: |
| .dw DO_COLON |
| PFA_DOTSTRING: |
| .dw XT_SQUOTE |
| .dw XT_COMPILE |
| .dw XT_ITYPE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/douser.html |
|---|
| 0,0 → 1,106 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/douser.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/douser.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr ) |
| ; R( -- ) |
| ; runtime part of user |
| ;VE_DOUSER: |
| ; .db $06, "(user)", 0 |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_DOUSER |
| XT_DOUSER: |
| .dw PFA_DOUSER |
| PFA_DOUSER: |
| savetos |
| movw zl, wl |
| adiw zl, 1 |
| lsl zl |
| rol zh |
| lpm tosl, Z+ |
| lpm tosh, Z |
| add tosl, upl |
| adc tosh, uph |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/dovariable.html |
|---|
| 0,0 → 1,104 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/dovariable.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/dovariable.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr ) |
| ; R( -- ) |
| ; puts content of parameter field (1 cell) to TOS |
| ;VE_DOVARIABLE: |
| ; .db $0a, "(variable)", 0 |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_DOVARIABLE |
| XT_DOVARIABLE: |
| .dw PFA_DOVARIABLE |
| PFA_DOVARIABLE: |
| savetos |
| movw zl, wl |
| adiw zl,1 |
| lsl zl |
| rol zh |
| lpm tosl, Z+ |
| lpm tosh, Z |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/dp.html |
|---|
| 0,0 → 1,97 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/dp.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/dp.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- eaddr) System Pointer |
| ; R( -- ) |
| ; first unused address in flash (NRWW is always used) |
| VE_DP: |
| .db $02, "dp",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_DP |
| XT_DP: |
| .dw PFA_DOVARIABLE |
| PFA_DP: |
| .dw $00 |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/drop.html |
|---|
| 0,0 → 1,98 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/drop.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/drop.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n -- ) Stack |
| ; R( -- ) |
| ; drop TOS |
| VE_DROP: |
| .db $04, "drop", 0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_DROP |
| XT_DROP: |
| .dw PFA_DROP |
| PFA_DROP: |
| loadtos |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/dup.html |
|---|
| 0,0 → 1,98 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/dup.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/dup.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n -- n n ) Stack |
| ; R( -- ) |
| ; duplicate TOS |
| VE_DUP: |
| .db $03, "dup" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_DUP |
| XT_DUP: |
| .dw PFA_DUP |
| PFA_DUP: |
| savetos |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/edefer-fetch.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/edefer-fetch.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/edefer-fetch.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( xt1 -- xt2 ) System |
| ; R( -- ) |
| ; does the real defer@ for eeprom defers |
| ;VE_EDEFERFETCH: |
| ; .db $07, "Edefer@" |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_EDEFERFETCH |
| XT_EDEFERFETCH: |
| .dw DO_COLON |
| PFA_EDEFERFETCH: |
| .dw XT_1PLUS ; >body |
| .dw XT_IFETCH |
| .dw XT_EFETCH |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/edefer-store.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/edefer-store.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/edefer-store.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( xt1 xt2 -- ) System |
| ; R( -- ) |
| ; does the real defer! for eeprom defers |
| ;VE_EDEFERSTORE: |
| ; .db $07, "Edefer!" |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_EDEFERSTORE |
| XT_EDEFERSTORE: |
| .dw DO_COLON |
| PFA_EDEFERSTORE: |
| .dw XT_1PLUS |
| .dw XT_IFETCH |
| .dw XT_ESTORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/edefer.html |
|---|
| 0,0 → 1,113 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/edefer.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/edefer.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n <name> -- ) Compiler |
| ; R( -- ) |
| ; creates a defer vector which is kept in eeprom. |
| VE_EDEFER: |
| .db $06, "Edefer",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_EDEFER |
| XT_EDEFER: |
| .dw DO_COLON |
| PFA_EDEFER: |
| .dw XT_DOCREATE |
| .dw XT_COMPILE |
| .dw PFA_DODEFER |
| .dw XT_EDP |
| .dw XT_EFETCH |
| .dw XT_DUP |
| .dw XT_COMMA |
| .dw XT_COMPILE |
| .dw XT_EDEFERFETCH |
| .dw XT_COMPILE |
| .dw XT_EDEFERSTORE |
| .dw XT_1PLUS |
| .dw XT_1PLUS |
| .dw XT_EDP |
| .dw XT_ESTORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/edp.html |
|---|
| 0,0 → 1,97 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/edp.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/edp.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- eaddr) System Pointer |
| ; R( -- ) |
| ; first unused address in eeprom |
| VE_EDP: |
| .db $03, "edp" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_EDP |
| XT_EDP: |
| .dw PFA_DOVARIABLE |
| PFA_EDP: |
| .dw $06 |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/efetch.html |
|---|
| 0,0 → 1,123 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/efetch.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/efetch.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr - n) Memory |
| ; R( -- ) |
| ; read 2 bytes from eeprom |
| VE_EFETCH: |
| .db $02, "e@",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_EFETCH |
| XT_EFETCH: |
| .dw PFA_EFETCH |
| PFA_EFETCH: |
| movw zl, tosl |
| PFA_EFETCH1: |
| in temp0, EECR |
| sbrc temp0,EEWE |
| rjmp PFA_EFETCH1 |
| out EEARH, zh |
| out EEARL, zl |
| sbi EECR,EERE |
| in tosl,EEDR |
| adiw zl,1 |
| PFA_EFETCH2: |
| in temp1, EECR |
| sbrc temp1,EEWE |
| rjmp PFA_EFETCH2 |
| out EEARH,zh |
| out EEARL,zl |
| sbi EECR,EERE |
| in tosh,EEDR |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/else.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/else.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/else.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr1 -- addr2) Compiler |
| ; R( -- ) |
| ; |
| VE_ELSE: |
| .db $84, "else",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_ELSE |
| XT_ELSE: |
| .dw DO_COLON |
| PFA_ELSE: |
| .dw XT_COMPILE |
| .dw XT_DOBRANCH |
| .dw XT_GMARK |
| .dw XT_SWAP |
| .dw XT_GRESOLVE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/emit.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/emit.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/emit.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- eaddr) Character IO |
| ; R( -- ) |
| ; fetch the emit vector and execute it |
| VE_EMIT: |
| .db $04, "emit",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_EMIT |
| XT_EMIT: |
| .dw PFA_DODEFER |
| PFA_EMIT: |
| .dw 12 |
| .dw XT_UDEFERFETCH |
| .dw XT_UDEFERSTORE |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/emitq.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/emitq.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/emitq.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- c) Character IO |
| ; R( -- ) |
| ; fetch emit? vector and execute it |
| VE_EMITQ: |
| .db $05, "emit?" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_EMITQ |
| XT_EMITQ: |
| .dw PFA_DODEFER |
| PFA_EMITQ: |
| .dw 14 |
| .dw XT_UDEFERFETCH |
| .dw XT_UDEFERSTORE |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/endcase.html |
|---|
| 0,0 → 1,106 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/endcase.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/endcase.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( f -- ) Compiler |
| ; R( -- ) |
| ; |
| VE_ENDCASE: |
| .db $87, "endcase" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_ENDCASE |
| XT_ENDCASE: |
| .dw DO_COLON |
| PFA_ENDCASE: |
| PFA_ENDCASE1: |
| .dw XT_QDUP |
| .dw XT_DOCONDBRANCH |
| .dw PFA_ENDCASE2 |
| .dw XT_THEN |
| .dw XT_DOBRANCH |
| .dw PFA_ENDCASE1 |
| PFA_ENDCASE2: |
| .dw XT_DROP |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/endof.html |
|---|
| 0,0 → 1,98 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/endof.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/endof.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr1 -- addr2 ) Compiler |
| ; R( -- ) |
| ; |
| VE_ENDOF: |
| .db $85, "endof" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_ENDOF |
| XT_ENDOF: |
| .dw DO_COLON |
| PFA_ENDOF: |
| .dw XT_ELSE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/equal.html |
|---|
| 0,0 → 1,107 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/equal.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/equal.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- flag ) Compare |
| ; R( -- ) |
| ; compares two values |
| VE_EQUAL: |
| .db $01, "=" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_EQUAL |
| XT_EQUAL: |
| .dw PFA_EQUAL |
| PFA_EQUAL: |
| ld temp2, Y+ |
| ld temp3, Y+ |
| cp tosl, temp2 |
| cpc tosh, temp3 |
| PFA_EQUALDONE: |
| movw zl, zerol |
| brne PFA_EQUAL1 |
| sbiw zl, 1 |
| PFA_EQUAL1: |
| movw tosl, zl |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/equalzero.html |
|---|
| 0,0 → 1,98 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/equalzero.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/equalzero.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n -- flag ) Compare |
| ; R( -- ) |
| ; compare with 0 (zero) |
| VE_EQUALZERO: |
| .db $02, "0=",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_EQUALZERO |
| XT_EQUALZERO: |
| .dw PFA_EQUALZERO |
| PFA_EQUALZERO: |
| or tosh, tosl |
| rjmp PFA_EQUALDONE |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/estore.html |
|---|
| 0,0 → 1,139 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/estore.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/estore.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n addr -- ) Memory |
| ; R( -- ) |
| ; write to eeprom address |
| VE_ESTORE: |
| .db $02, "e!",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_ESTORE |
| XT_ESTORE: |
| .dw PFA_ESTORE |
| PFA_ESTORE: |
| movw zl, tosl |
| loadtos |
| PFA_ESTORE1: |
| in temp0, EECR |
| sbrc temp0,EEWE |
| rjmp PFA_ESTORE1 |
| PFA_ESTORE2: ; estore_wait_low_spm: |
| in temp0, SPMCR |
| sbrc temp0,SPMEN |
| rjmp PFA_ESTORE2 |
| out EEARH,zh |
| out EEARL,zl |
| out EEDR, tosl |
| in temp2, SREG |
| cli |
| sbi EECR,EEMWE |
| sbi EECR,EEWE |
| out SREG, temp2 |
| adiw zl,1 |
| PFA_ESTORE3: |
| in temp0, EECR |
| sbrc temp0,EEWE |
| rjmp PFA_ESTORE3 |
| PFA_ESTORE4: ; estore_wait_hi_spm: |
| in temp0, SPMCR |
| sbrc temp0,SPMEN |
| rjmp PFA_ESTORE4 |
| out EEARH,zh |
| out EEARL,zl |
| out EEDR, tosh |
| in temp2, SREG |
| cli |
| sbi EECR,EEMWE |
| sbi EECR,EEWE |
| out SREG, temp2 |
| loadtos |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/execute.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/execute.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/execute.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( xt -- ) System |
| ; R( -- ) |
| ; execute XT |
| VE_EXECUTE: |
| .db $07, "execute" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_EXECUTE |
| XT_EXECUTE: |
| .dw PFA_EXECUTE |
| PFA_EXECUTE: |
| movw wl, tosl |
| loadtos |
| rjmp DO_EXECUTE |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/exit.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/exit.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/exit.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Compiler |
| ; R( xt -- ) |
| ; end of current colon word |
| VE_EXIT: |
| .db $04, "exit",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_EXIT |
| XT_EXIT: |
| .dw PFA_EXIT |
| PFA_EXIT: |
| pop xl |
| pop xh |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/f_cpu.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/f_cpu.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/f_cpu.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- f_cou ) System |
| ; R( -- ) |
| ; put the cpu frequency on stack |
| VE_F_CPU: |
| .db $05, "f_cpu" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_F_CPU |
| XT_F_CPU: |
| .dw DO_COLON |
| PFA_F_CPU: |
| .dw XT_DOLITERAL |
| .dw (cpu_frequency / 65536) |
| .dw XT_DOLITERAL |
| .dw (cpu_frequency % 65536) |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/fetch.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/fetch.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/fetch.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr -- n ) Memory |
| ; R( -- ) |
| ; read 1 cell from RAM (or IO or CPU register) |
| VE_FETCH: |
| .db $01, "@" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_FETCH |
| XT_FETCH: |
| .dw PFA_FETCH |
| PFA_FETCH: |
| movw zl, tosl |
| ld tosl, z+ |
| ld tosh, z+ |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/find.html |
|---|
| 0,0 → 1,219 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/find.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/find.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr -- -- [ addr 0 ] | [ xt [-1|1]] ) Tools |
| ; R( -- ) |
| ; search dictionary |
| VE_FIND: |
| .db $04, "find", 0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_FIND |
| XT_FIND: |
| .dw DO_COLON |
| PFA_FIND: |
| .dw XT_DUP |
| .dw XT_TO_R |
| .dw XT_HEAD |
| .dw XT_EFETCH |
| PFA_FIND1: |
| ; ( addr ) |
| .dw XT_DUP |
| .dw XT_NOTEQUALZERO |
| .dw XT_DOCONDBRANCH |
| .dw PFA_FIND2 |
| .dw XT_ICOMPARE |
| ; (addr-ram addr-flash -- addr-flash' 0|1 |
| .dw XT_QDUP |
| .dw XT_NOTEQUALZERO |
| .dw XT_DOCONDBRANCH |
| .dw PFA_FIND3 |
| ; we found the word |
| .dw XT_SWAP |
| .dw XT_1PLUS ; make XT |
| .dw XT_SWAP |
| .dw XT_R_FROM |
| .dw XT_DROP |
| .dw XT_EXIT |
| PFA_FIND3: |
| .dw XT_R_FROM |
| .dw XT_DUP |
| .dw XT_TO_R |
| .dw XT_SWAP |
| .dw XT_IFETCH |
| .dw XT_DOBRANCH |
| .dw PFA_FIND1 |
| PFA_FIND2: |
| .dw XT_DROP |
| .dw XT_DROP |
| .dw XT_R_FROM |
| .dw XT_ZERO |
| .dw XT_EXIT |
| ; private headerless routine |
| ; compares counted string in RAM with counted string in flash |
| ; |
| ; ( addr -- -- [ addr 0 ] | [ xt [-1|1]] ) |
| ; R( -- ) |
| ; search dictionary |
| ;VE_ICOMPARE: |
| ; .db $04, "icompare" |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_ICOMPARE |
| XT_ICOMPARE: |
| .dw DO_COLON |
| PFA_ICOMPARE: |
| ; ( addr-ram addr-flash -- 0| +/-1 |
| .dw XT_DUP |
| .dw XT_IFETCH |
| .dw XT_DUP |
| .dw XT_DOLITERAL |
| .dw $0080 |
| .dw XT_AND |
| .dw XT_TO_R ; send immediate flag to r-stack |
| .dw XT_ZERO |
| .dw XT_TO_R |
| .dw XT_DOLITERAL |
| .dw $001f |
| .dw XT_AND |
| .dw XT_2SLASH |
| .dw XT_1PLUS |
| .dw XT_TO_R |
| PFA_ICOMPARE1: |
| .dw XT_OVER |
| .dw XT_OVER |
| .dw XT_IFETCH |
| .dw XT_DOLITERAL |
| .dw $ff7f |
| .dw XT_AND |
| .dw XT_SWAP |
| .dw XT_FETCH |
| .dw XT_EQUAL |
| .dw XT_DOCONDBRANCH |
| .dw PFA_ICOMPARE3 |
| ; increment pointers, 1 CELL for FLASH, 2 bytes for RAM |
| .dw XT_1PLUS |
| .dw XT_SWAP |
| .dw XT_1PLUS |
| .dw XT_1PLUS |
| .dw XT_SWAP |
| ; decrement cell counter, leave loop for zero |
| .dw XT_R_FROM |
| .dw XT_1MINUS |
| .dw XT_DUP |
| .dw XT_TO_R |
| .dw XT_EQUALZERO |
| .dw XT_DOCONDBRANCH |
| .dw PFA_ICOMPARE2 |
| ; we found matching strings |
| .dw XT_R_FROM |
| .dw XT_R_FROM |
| .dw XT_DROP |
| .dw XT_DOLITERAL |
| .dw 1 |
| .dw XT_TO_R |
| .dw XT_TO_R |
| .dw XT_DOBRANCH |
| .dw PFA_ICOMPARE3 |
| PFA_ICOMPARE2: |
| .dw XT_DOBRANCH |
| .dw PFA_ICOMPARE1 |
| PFA_ICOMPARE3: |
| .dw XT_SWAP |
| .dw XT_DROP |
| .dw XT_R_FROM |
| .dw XT_PLUS |
| .dw XT_R_FROM |
| .dw XT_R_FROM |
| .dw XT_EQUALZERO |
| .dw XT_DOCONDBRANCH |
| .dw PFA_ICOMPARE4 |
| .dw XT_NEGATE |
| PFA_ICOMPARE4: |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/g_in.html |
|---|
| 0,0 → 1,98 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/g_in.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/g_in.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr ) System |
| ; R( -- ) |
| ; pointer to current read position in TIB |
| VE_G_IN: |
| .db $03, ">in" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_G_IN |
| XT_G_IN: |
| .dw PFA_DOVARIABLE |
| PFA_G_IN: |
| .dw heap |
| .set heap = heap + CELLSIZE |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/g_mark.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/g_mark.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/g_mark.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr ) Control Structure |
| ; R( -- ) |
| ; places current dictionary position for backward resolves |
| ;VE_GMARK: |
| ; .db 5, ">mark" |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_GMARK |
| XT_GMARK: |
| .dw DO_COLON |
| PFA_GMARK: |
| .dw XT_HERE |
| .dw XT_COMPILE |
| .dw -1 ; ffff does not erase flash |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/g_resolve.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/g_resolve.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/g_resolve.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr -- ) Control Structure |
| ; R( -- ) |
| ; resolved backward jumps |
| ;VE_GRESOLVE: |
| ; .db 8, ">resolve",0 |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_GRESOLVE |
| XT_GRESOLVE: |
| .dw DO_COLON |
| PFA_GRESOLVE: |
| .dw XT_HERE |
| .dw XT_SWAP |
| .dw XT_ISTORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/greater.html |
|---|
| 0,0 → 1,109 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/greater.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/greater.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- flag ) Compare |
| ; R( -- ) |
| ; compares two values (signed) |
| VE_GREATER: |
| .db $01, ">" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_GREATER |
| XT_GREATER: |
| .dw PFA_GREATER |
| PFA_GREATER: |
| ld temp2, Y+ |
| ld temp3, Y+ |
| cp temp2, tosl |
| cpc temp3, tosh |
| PFA_GREATERDONE: |
| movw zl, zerol |
| brlt PFA_GREATER1 |
| brbs 1, PFA_GREATER1 |
| sbiw zl, 1 |
| PFA_GREATER1: |
| movw tosl, zl |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/greaterzero.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/greaterzero.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/greaterzero.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 -- flag ) Compare |
| ; R( -- ) |
| ; compare with zero |
| VE_GREATERZERO: |
| .db $02, "0>",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_GREATERZERO |
| XT_GREATERZERO: |
| .dw PFA_GREATERZERO |
| PFA_GREATERZERO: |
| cp tosl, zerol |
| cpc tosh, zeroh |
| rjmp PFA_GREATERDONE |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/handler.html |
|---|
| 0,0 → 1,97 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/handler.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/handler.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr ) Exceptions |
| ; R( -- ) |
| ; used by catch/throw |
| VE_HANDLER: |
| .db $07, "handler" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_HANDLER |
| XT_HANDLER: |
| .dw PFA_DOUSER |
| PFA_HANDLER: |
| .dw 10 |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/head.html |
|---|
| 0,0 → 1,97 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/head.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/head.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- eaddr) System Pointer |
| ; R( -- ) |
| ; address of first unallocated flash (below NRWW) |
| _VE_HEAD: |
| .db $04, "head",0 |
| .dw VE_HEAD |
| .set VE_HEAD = _VE_HEAD |
| XT_HEAD: |
| .dw PFA_DOVARIABLE |
| PFA_HEAD: |
| .dw $02 |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/heap.html |
|---|
| 0,0 → 1,97 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/heap.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/heap.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- eaddr) System Pointer |
| ; R( -- ) |
| ; address of first unallocated RAM |
| VE_HEAP: |
| .db $04, "heap",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_HEAP |
| XT_HEAP: |
| .dw PFA_DOVARIABLE |
| PFA_HEAP: |
| .dw $04 |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/here.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/here.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/here.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr ) System Pointer |
| ; R( -- ) |
| ; |
| VE_HERE: |
| .db $04, "here",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_HERE |
| XT_HERE: |
| .dw DO_COLON |
| PFA_HERE: |
| .dw XT_DP |
| .dw XT_EFETCH |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/hex.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/hex.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/hex.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Numeric IO |
| ; R( -- ) |
| ; set base to 16 (decimal) |
| VE_HEX: |
| .db $03, "hex" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_HEX |
| XT_HEX: |
| .dw DO_COLON |
| PFA_HEX: |
| .dw XT_DOLITERAL |
| .dw 16 |
| .dw XT_BASE |
| .dw XT_STORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/hld.html |
|---|
| 0,0 → 1,98 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/hld.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/hld.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr ) Numeric IO |
| ; R( -- ) |
| ; address of buffer for pictured numeric output |
| VE_HLD: |
| .db $03, "hld" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_HLD |
| XT_HLD: |
| .dw DO_COLON |
| PFA_HLD: |
| .dw XT_PAD |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/hold.html |
|---|
| 0,0 → 1,115 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/hold.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/hold.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( c -- ) Numeric IO |
| ; R( -- ) |
| ; prepend character to pictured numeric output buffer |
| VE_HOLD: |
| .db $04, "hold",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_HOLD |
| XT_HOLD: |
| .dw DO_COLON |
| PFA_HOLD: |
| ; move characters to the right |
| .dw XT_HLD ; from |
| .dw XT_1PLUS |
| .dw XT_DUP |
| .dw XT_1PLUS ; to |
| .dw XT_HLD |
| .dw XT_CFETCH ; number bytes |
| .dw XT_CMOVE_G |
| ; increase string length |
| .dw XT_HLD |
| .dw XT_CFETCH |
| .dw XT_1PLUS |
| .dw XT_HLD |
| .dw XT_CSTORE |
| ; store character as the first position |
| .dw XT_HLD |
| .dw XT_1PLUS |
| .dw XT_CSTORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/i.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/i.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/i.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- n ) Control Structure |
| ; R( loop-sys -- loop-sys) |
| ; current loop counter |
| VE_I: |
| .db 1, "i" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_I |
| XT_I: |
| .dw PFA_I |
| PFA_I: |
| savetos |
| pop tosl |
| pop tosh |
| push tosh |
| push tosl |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/icount.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/icount.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/icount.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( adr -- adr n ) Tools |
| ; R( -- ) |
| ; get count byte out of packed counted string in flash |
| VE_ICOUNT: |
| .db $06, "icount",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_ICOUNT |
| XT_ICOUNT: |
| .dw DO_COLON |
| PFA_ICOUNT: |
| .dw XT_DUP |
| .dw XT_IFETCH |
| .dw XT_DOLITERAL |
| .dw $00ff ; only the count byte |
| .dw XT_AND |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/idump.html |
|---|
| 0,0 → 1,113 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/idump.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/idump.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr len -- ) Tools |
| ; R( -- ) |
| ; dumps flash memory beginning with address addr and len cells long |
| VE_IDUMP: |
| .db $5, "idump" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_IDUMP |
| XT_IDUMP: |
| .dw DO_COLON |
| PFA_IDUMP: |
| .dw XT_ZERO |
| .dw XT_DODO |
| .dw PFA_IDUMP2 |
| PFA_IDUMP1: |
| .dw XT_I |
| .dw XT_OVER |
| .dw XT_PLUS |
| .dw XT_DUP |
| .dw XT_UDOT |
| .dw XT_IFETCH |
| .dw XT_UDOT |
| .dw XT_CR |
| .dw XT_DOLOOP |
| .dw PFA_IDUMP1 |
| PFA_IDUMP2: |
| .dw XT_DROP |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/if.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/if.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/if.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr ) Control Structure |
| ; R( -- ) |
| ; start conditional branch |
| VE_IF: |
| .db $82, "if",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_IF |
| XT_IF: |
| .dw DO_COLON |
| PFA_IF: |
| .dw XT_COMPILE |
| .dw XT_DOCONDBRANCH |
| .dw XT_GMARK |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/ifetch.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/ifetch.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/ifetch.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr -- n1 ) Memory |
| ; R( -- ) |
| ; reads a cell from flash, addr is cell address, not byte addres first byte gets into the lower word on tos |
| VE_IFETCH: |
| .db $02, "i@", 0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_IFETCH |
| XT_IFETCH: |
| .dw PFA_IFETCH |
| PFA_IFETCH: |
| movw zl, tosl |
| lsl zl |
| rol zh |
| lpm tosl, z+ |
| lpm tosh, z+ |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/immediate.html |
|---|
| 0,0 → 1,106 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/immediate.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/immediate.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Compiler |
| ; R( -- ) |
| ; set immediate flag |
| VE_IMMEDIATE: |
| .db $09, "immediate" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_IMMEDIATE |
| XT_IMMEDIATE: |
| .dw DO_COLON |
| PFA_IMMEDIATE: |
| .dw XT_HEAD |
| .dw XT_EFETCH |
| .dw XT_DUP |
| .dw XT_IFETCH |
| .dw XT_DOLITERAL |
| .dw $0080 |
| .dw XT_OR |
| .dw XT_SWAP |
| .dw XT_ISTORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/interpret.html |
|---|
| 0,0 → 1,155 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/interpret.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/interpret.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) System |
| ; R(i*x - j*x ) |
| ; interpret input word by word. may throw exceptions |
| VE_INTERPRET: |
| .db $09, "interpret" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_INTERPRET |
| XT_INTERPRET: |
| .dw DO_COLON |
| PFA_INTERPRET: |
| PFA_INTERPRET1: |
| .dw XT_BL |
| .dw XT_WORD |
| .dw XT_DUP |
| .dw XT_CFETCH |
| .dw XT_GREATERZERO |
| .dw XT_DOCONDBRANCH |
| .dw PFA_INTERPRET4 |
| .dw XT_FIND |
| .dw XT_QDUP |
| .dw XT_EQUALZERO |
| .dw XT_DOCONDBRANCH |
| .dw PFA_INTERPRET2 |
| .dw XT_NUMBER |
| ; check state |
| .dw XT_STATE |
| .dw XT_FETCH |
| .dw XT_NOTEQUALZERO |
| .dw XT_DOCONDBRANCH |
| .dw PFA_INTERPRET9 |
| ; |
| .dw XT_COMPILE |
| .dw XT_DOLITERAL |
| .dw XT_COMMA |
| PFA_INTERPRET9: |
| .dw XT_DOBRANCH |
| .dw PFA_INTERPRET3 |
| PFA_INTERPRET2: |
| ; either compile or execute |
| .dw XT_GREATERZERO |
| .dw XT_DOCONDBRANCH |
| .dw PFA_INTERPRET5 |
| ; flag was 1: always execute |
| .dw XT_EXECUTE |
| .dw XT_DOBRANCH |
| .dw PFA_INTERPRET6 |
| PFA_INTERPRET5: |
| ; check state |
| .dw XT_STATE |
| .dw XT_FETCH |
| .dw XT_EQUALZERO |
| .dw XT_DOCONDBRANCH |
| .dw PFA_INTERPRET7 |
| ; state is zero, execute xt |
| .dw XT_EXECUTE |
| .dw XT_DOBRANCH |
| .dw PFA_INTERPRET8 |
| PFA_INTERPRET7: |
| .dw XT_COMMA |
| PFA_INTERPRET8: |
| PFA_INTERPRET6: |
| PFA_INTERPRET3: |
| .dw XT_DOBRANCH |
| .dw PFA_INTERPRET1 |
| PFA_INTERPRET4: |
| .dw XT_DROP |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/intx.html |
|---|
| 0,0 → 1,200 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/intx.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/intx.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| .set intcur = heap ; current interrupt |
| .set heap = heap + 1 |
| .set intvec = heap ; forth interrupt vector (contain the XT) |
| .set heap = heap + INTVECTORS * CELLSIZE |
| ; interrupt routine gets called (again) by rcall! This gives the |
| ; address of the int-vector on the stack. |
| isr: |
| st -Y, r0 |
| in r0, SREG |
| st -Y, r0 |
| pop r0 |
| pop r0 ; = intnum * intvectorsize + 1 (address following the rcall) |
| dec r0 |
| .if intvecsize == 1 ; |
| lsl r0 |
| .endif |
| sts intcur, r0 |
| ld r0, Y+ |
| out SREG, r0 |
| ld r0, Y+ |
| set ; set the interrupt flag for the inner interpreter |
| reti ; returns the interrupt, the rcall stack frame is removed! |
| ; ( xt i -- ) Interrupt |
| ; R( -- ) |
| ; stores XT as interrupt vector i |
| VE_INTSTORE: |
| .db $04, "int!",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_INTSTORE |
| XT_INTSTORE: |
| .dw DO_COLON |
| PFA_INTSTORE: |
| .dw XT_2STAR |
| .dw XT_DOLITERAL |
| .dw intvec |
| .dw XT_PLUS |
| .dw XT_STORE |
| .dw XT_EXIT |
| ; ( i -- xt ) Interrupt |
| ; R( -- ) |
| ; fetches XT from interrupt vector i |
| VE_INTFETCH: |
| .db $04, "int@",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_INTFETCH |
| XT_INTFETCH: |
| .dw DO_COLON |
| PFA_INTFETCH: |
| .dw XT_2STAR |
| .dw XT_DOLITERAL |
| .dw intvec |
| .dw XT_PLUS |
| .dw XT_FETCH |
| .dw XT_EXIT |
| ; ( -- n ) Interrupt |
| ; R( -- ) |
| ; number of interrupt vectors (0 based) |
| VE_NUMINT: |
| .db $04, "#int",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_NUMINT |
| XT_NUMINT: |
| .dw PFA_DOVARIABLE |
| PFA_NUMINT: |
| .dw INTVECTORS |
| ; ( -- sreg ) Interrupt |
| ; R( -- ) |
| ; turns off all interrupts and leaves SREG in TOS |
| VE_INTOFF: |
| .db $04, "/int",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_INTOFF |
| XT_INTOFF: |
| .dw PFA_INTOFF |
| PFA_INTOFF: |
| savetos |
| clr tosh |
| in tosl, SREG |
| cli |
| jmp_ DO_NEXT |
| ; ( -- ) Interrupt |
| ; R( -- ) |
| ; turns on all interrupts |
| VE_INTON: |
| .db $03, "int" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_INTON |
| XT_INTON: |
| .dw PFA_INTON |
| PFA_INTON: |
| sei |
| jmp_ DO_NEXT |
| ; ( sreg -- ) Interrupt |
| ; R( -- ) |
| ; restores SREG from TOS ( |
| ;VE_INTRESTORE: |
| ; .db $0B, "int_restore" |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_INTRESTORE |
| XT_INTRESTORE: |
| .dw PFA_INTRESTORE |
| PFA_INTRESTORE: |
| out SREG, tosl |
| loadtos |
| jmp_ DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/invert.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/invert.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/invert.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 -- n2) Arithmetics |
| ; R( -- ) |
| ; 1-complement of TOS |
| VE_INVERT: |
| .db $06, "invert",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_INVERT |
| XT_INVERT: |
| .dw PFA_INVERT |
| PFA_INVERT: |
| com tosl |
| com tosh |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/is.html |
|---|
| 0,0 → 1,109 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/is.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/is.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( xt1 c<char> -- ) System |
| ; R( --) |
| ; stores xt into defer or compiles code to do so at runtime |
| VE_IS: |
| .db $82, "is", 0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_IS |
| XT_IS: |
| .dw DO_COLON |
| PFA_IS: |
| .dw XT_STATE |
| .dw XT_FETCH |
| .dw XT_DOCONDBRANCH |
| .dw PFA_IS1 |
| .dw XT_BRACKETTICK |
| .dw XT_COMPILE |
| .dw XT_DEFERSTORE |
| .dw XT_EXIT |
| PFA_IS1: |
| .dw XT_TICK |
| .dw XT_DEFERSTORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/istore.html |
|---|
| 0,0 → 1,289 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/istore.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/istore.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n addr -- ) Memory |
| ; R( -- ) |
| ; writes a cell in flash |
| VE_ISTORE: |
| .db $02, "i!",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_ISTORE |
| XT_ISTORE: |
| .dw DO_COLON |
| PFA_ISTORE: |
| .dw XT_INTOFF |
| .dw XT_TO_R |
| .dw XT_OVER |
| .dw XT_OVER |
| .dw XT_SPMBUF |
| .dw XT_DUP |
| .dw XT_SPMPAGELOAD |
| ; an erase cycle is only necessary |
| ; when changing a bit from 0 to 1 |
| .dw XT_OVER |
| .dw XT_OVER |
| .dw XT_IFETCH |
| .dw XT_INVERT |
| .dw XT_AND |
| .dw XT_DOCONDBRANCH |
| .dw PFA_ISTORE_WRITE |
| .dw XT_DUP |
| .dw XT_SPMERASE |
| PFA_ISTORE_WRITE: |
| .dw XT_DUP |
| .dw XT_SPMWRITE |
| .dw XT_SPMRWW |
| .dw XT_DROP |
| .dw XT_DROP |
| .dw XT_R_FROM |
| .dw XT_INTRESTORE |
| .dw XT_EXIT |
| ; ( addr -- ) |
| ; R( -- ) |
| ; load the flash page of cell addr into write buffer, omitting addr itself |
| ;VE_SPMPAGELOAD: |
| ; .db 11, "spmpageload" |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_INTSPMPAGELOAD |
| XT_SPMPAGELOAD: |
| .dw DO_COLON |
| PFA_SPMPAGELOAD: |
| .dw XT_DUP |
| .dw XT_TO_R |
| .dw XT_DOLITERAL |
| .dw PAGEMASK |
| .dw XT_AND |
| .dw XT_DOLITERAL |
| .dw PAGESIZE |
| .dw XT_SWAP |
| PFA_SPMPAGELOAD1: |
| .dw XT_OVER |
| .dw XT_GREATERZERO |
| .dw XT_DOCONDBRANCH |
| .dw PFA_SPMPAGELOADDONE |
| .dw XT_R_FROM |
| .dw XT_DUP |
| .dw XT_TO_R |
| .dw XT_OVER |
| .dw XT_NOTEQUAL |
| .dw XT_DOCONDBRANCH |
| .dw PFA_SPMPAGELOAD3 |
| .dw XT_DUP |
| .dw XT_IFETCH |
| .dw XT_OVER |
| .dw XT_SPMBUF |
| PFA_SPMPAGELOAD3: ;( size addr -- ) |
| .dw XT_1PLUS |
| .dw XT_SWAP |
| .dw XT_1MINUS |
| .dw XT_SWAP |
| .dw XT_DOBRANCH |
| .dw PFA_SPMPAGELOAD1 |
| PFA_SPMPAGELOADDONE: |
| .dw XT_DROP |
| .dw XT_DROP |
| .dw XT_R_FROM |
| .dw XT_DROP |
| .dw XT_EXIT |
| ; ( spmcsr x addr -- ) |
| ; R( -- ) |
| ; execute spm instruction |
| ;VE_DOSPM: |
| ; .db $03, "(spm)" |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_DOSPM |
| XT_DOSPM: |
| .dw PFA_DOSPM |
| PFA_DOSPM: |
| ; wait for pending spm instruction |
| PFA_DOSPM1: |
| in temp1, SPMCR |
| andi temp1, (1<<SPMEN) |
| brne PFA_DOSPM1 |
| PFA_DOSPM2: |
| sbic EECR, EEWE |
| rjmp PFA_DOSPM2 |
| ; address |
| movw zl, tosl |
| lsl zl |
| rol zh |
| ; value |
| ld r0, Y+ |
| ld r1, Y+ |
| ; command |
| ld temp0, Y+ |
| ld temp1, Y+ |
| ; spm timed sequence |
| out SPMCR, temp0 |
| spm |
| loadtos |
| rjmp DO_NEXT |
| ; ( x addr -- ) |
| ; R( -- ) |
| ; execute spm buf instruction |
| ;VE_SPMBUF: |
| ; .db $06, "spmbuf",0 |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_SPMBUF |
| XT_SPMBUF: |
| .dw DO_COLON |
| PFA_SPMBUF: |
| .dw XT_TO_R |
| .dw XT_TO_R |
| .dw XT_DOLITERAL |
| .dw (1<<SPMEN) |
| .dw XT_R_FROM |
| .dw XT_R_FROM |
| .dw XT_DOSPM |
| .dw XT_EXIT |
| ; ( addr -- ) |
| ; R( -- ) |
| ; execute spm erase instruction |
| ;VE_SPMERASE: |
| ; .db $08, "spmerase",0 |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_SPMERASE |
| XT_SPMERASE: |
| .dw DO_COLON |
| PFA_SPMERASE: |
| .dw XT_DOLITERAL |
| .dw PAGEMASK |
| .dw XT_AND |
| .dw XT_TO_R |
| .dw XT_DOLITERAL |
| .dw (1<<PGERS|1<<SPMEN) |
| .dw XT_ZERO |
| .dw XT_R_FROM |
| .dw XT_DOSPM |
| .dw XT_EXIT |
| ; ( spmcsr x addr -- ) |
| ; R( -- ) |
| ; execute spm write instruction |
| ;VE_SPMWRITE: |
| ; .db $08, "spmwrite",0 |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_WPMWRITE |
| XT_SPMWRITE: |
| .dw DO_COLON |
| PFA_SPMWRITE: |
| .dw XT_DOLITERAL |
| .dw PAGEMASK |
| .dw XT_AND |
| .dw XT_TO_R |
| .dw XT_DOLITERAL |
| .dw (1<<PGWRT|1<<SPMEN) |
| .dw XT_ZERO |
| .dw XT_R_FROM |
| .dw XT_DOSPM |
| .dw XT_EXIT |
| ; ( -- ) |
| ; R( -- ) |
| ; re-enables rww section execute spm rww instruction |
| ;VE_SPMRWW: |
| ; .db $05, "spmrww" |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_SPMRWW |
| XT_SPMRWW: |
| .dw DO_COLON |
| PFA_SPMRWW: |
| .dw XT_DOLITERAL |
| .dw (1<<RWWSRE|1<<SPMEN) |
| .dw XT_ZERO |
| .dw XT_ZERO |
| .dw XT_DOSPM |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/itype.html |
|---|
| 0,0 → 1,214 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/itype.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/itype.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr n -- ) Tools |
| ; R( -- ) |
| ; reads packed string from flash and emit it |
| VE_ITYPE: |
| .db $05, "itype" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_ITYPE |
| XT_ITYPE: |
| .dw DO_COLON |
| PFA_ITYPE: |
| .dw XT_DUP |
| .dw XT_EQUALZERO |
| ; IF |
| .dw XT_DOCONDBRANCH |
| .dw PFA_ITYPE1 |
| .dw XT_DROP |
| .dw XT_DROP |
| .dw XT_EXIT |
| ; THEN |
| PFA_ITYPE1: |
| .dw XT_DUP |
| .dw XT_DOLITERAL |
| .dw $0001 |
| .dw XT_EQUAL |
| ; IF |
| .dw XT_DOCONDBRANCH |
| .dw PFA_ITYPE2 |
| .dw XT_DROP |
| .dw XT_IFETCH |
| .dw XT_HIEMIT |
| .dw XT_EXIT |
| ; THEN |
| PFA_ITYPE2: |
| .dw XT_OVER |
| .dw XT_IFETCH |
| .dw XT_HIEMIT |
| .dw XT_DUP |
| .dw XT_2SLASH |
| .dw XT_1MINUS |
| .dw XT_TO_R ; >r save k=m-1 |
| .dw XT_R_FETCH ; r@ |
| .dw XT_GREATERZERO |
| ; IF |
| .dw XT_DOCONDBRANCH |
| .dw PFA_ITYPE4 |
| .dw XT_SWAP |
| .dw XT_R_FETCH ; r@ get k |
| .dw XT_ZERO |
| ; DO |
| .dw XT_DODO |
| .dw PFA_ITYPE7 |
| PFA_ITYPE3: |
| .dw XT_1PLUS |
| .dw XT_DUP |
| .dw XT_IFETCH |
| .dw XT_DUP |
| .dw XT_LOEMIT |
| .dw XT_HIEMIT |
| .dw XT_DOLOOP |
| .dw PFA_ITYPE3 |
| ; LOOP |
| PFA_ITYPE7: |
| .dw XT_SWAP |
| ; THEN |
| PFA_ITYPE4: |
| .dw XT_SWAP |
| .dw XT_1PLUS |
| .dw XT_SWAP |
| .dw XT_DOLITERAL |
| .dw $0001 |
| .dw XT_AND |
| .dw XT_EQUALZERO |
| ; IF |
| .dw XT_DOCONDBRANCH |
| .dw PFA_ITYPE5 |
| .dw XT_IFETCH |
| .dw XT_LOEMIT |
| .dw XT_DOBRANCH |
| .dw PFA_ITYPE6 |
| ; ELSE |
| PFA_ITYPE5: |
| .dw XT_IFETCH |
| .dw XT_DUP |
| .dw XT_LOEMIT |
| .dw XT_HIEMIT |
| ; THEN |
| PFA_ITYPE6: |
| .dw XT_R_FROM ; remove k |
| .dw XT_DROP |
| .dw XT_EXIT |
| ; ( w -- ) |
| ; R( -- ) |
| ; content of cell fetched on stack. |
| ;VE_LOEMIT: |
| ; .db $06, "loemit" |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_LOEMIT |
| XT_LOEMIT: |
| .dw DO_COLON |
| PFA_LOEMIT: |
| .dw XT_DOLITERAL |
| .dw $00ff |
| .dw XT_AND |
| .dw XT_EMIT |
| .dw XT_EXIT |
| ; ( w -- ) |
| ; R( -- ) |
| ; content of cell fetched on stack. |
| ;VE_HIEMIT: |
| ; .db $06, "hiemit" |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_HIEMIT |
| XT_HIEMIT: |
| .dw DO_COLON |
| PFA_HIEMIT: |
| .dw XT_DOLITERAL |
| .dw 8 |
| .dw XT_RSHIFT |
| .dw XT_EMIT |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/j.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/j.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/j.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- n ) Control Structure |
| ; R( loop-sys1 loop-sys2 -- loop-sys1 loop-sys2) |
| ; loop counter of outer loop |
| VE_J: |
| .db 1, "j" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_J |
| XT_J: |
| .dw DO_COLON |
| PFA_J: |
| .dw XT_RP_FETCH |
| .dw XT_DOLITERAL |
| .dw 9 |
| .dw XT_PLUS |
| .dw XT_FETCH |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/key.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/key.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/key.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- c ) Character IO |
| ; R( -- ) |
| ; fetch key vector and execute it |
| VE_KEY: |
| .db $03, "key" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_KEY |
| XT_KEY: |
| .dw PFA_DODEFER |
| PFA_KEY: |
| .dw 16 |
| .dw XT_UDEFERFETCH |
| .dw XT_UDEFERSTORE |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/keyq.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/keyq.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/keyq.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- f) Character IO |
| ; R( -- ) |
| ; fetch 'key? vector and execute it. Leave true if a character can be read, false otherwise |
| VE_KEYQ: |
| .db $04, "key?",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_KEYQ |
| XT_KEYQ: |
| .dw PFA_DODEFER |
| PFA_KEYQ: |
| .dw 18 |
| .dw XT_UDEFERFETCH |
| .dw XT_UDEFERSTORE |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/l_mark.html |
|---|
| 0,0 → 1,98 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/l_mark.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/l_mark.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr ) Control Structure |
| ; R( -- ) |
| ; place destination for backward branch |
| ;VE_LMARK: |
| ; .db 5, "<mark" |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_LMARK |
| XT_LMARK: |
| .dw DO_COLON |
| PFA_LMARK: |
| .dw XT_HERE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/l_resolve.html |
|---|
| 0,0 → 1,98 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/l_resolve.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/l_resolve.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr -- ) Control Structure |
| ; R( -- ) |
| ; resolve backward branch |
| ;VE_LRESOLVE: |
| ; .db 8, "<resolve",0 |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_LRESOLVE |
| XT_LRESOLVE: |
| .dw DO_COLON |
| PFA_LRESOLVE: |
| .dw XT_COMMA |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/l_sharp.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/l_sharp.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/l_sharp.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Numeric IO |
| ; R( -- ) |
| ; emties counted string at address from hld |
| VE_L_SHARP: |
| .db $02, "<#",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_L_SHARP |
| XT_L_SHARP: |
| .dw DO_COLON |
| PFA_L_SHARP: |
| .dw XT_ZERO |
| .dw XT_HLD |
| .dw XT_STORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/leave.html |
|---|
| 0,0 → 1,103 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/leave.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/leave.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) |
| ; R(next limit counter -- next ) |
| ; runtime of leave |
| VE_LEAVE: |
| .db 5, "leave" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_LEAVE |
| XT_LEAVE: |
| .dw PFA_LEAVE |
| PFA_LEAVE: |
| pop temp0 ; drop limit and counter from returnstack |
| pop temp1 |
| pop temp0 |
| pop temp1 |
| pop xl |
| pop xh |
| jmp_ DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/leftbracket.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/leftbracket.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/leftbracket.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Compiler |
| ; R( -- ) |
| ; put system to interpreter state |
| VE_LBRACKET: |
| .db $81, "[" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_LBRACKET |
| XT_LBRACKET: |
| .dw DO_COLON |
| PFA_LBRACKET: |
| .dw XT_ZERO |
| .dw XT_STATE |
| .dw XT_STORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/less.html |
|---|
| 0,0 → 1,107 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/less.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/less.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- flasg) Compare |
| ; R( -- ) |
| ; compare two values |
| VE_LESS: |
| .db $01, "<" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_LESS |
| XT_LESS: |
| .dw PFA_LESS |
| PFA_LESS: |
| ld temp2, Y+ |
| ld temp3, Y+ |
| cp temp2, tosl |
| cpc temp3, tosh |
| PFA_LESSDONE: |
| movw zl, zerol |
| brge PFA_LESS1 |
| sbiw zl, 1 |
| PFA_LESS1: |
| movw tosl, zl |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/lesszero.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/lesszero.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/lesszero.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 -- flag) Compare |
| ; R( -- ) |
| ; compare with zero |
| VE_LESSZERO: |
| .db $02, "0<",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_LESSZERO |
| XT_LESSZERO: |
| .dw PFA_LESSZERO |
| PFA_LESSZERO: |
| cp tosl, zerol |
| cpc tosh, zeroh |
| rjmp PFA_LESSDONE |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/literal.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/literal.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/literal.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n -- ) Compiler |
| ; R( -- ) |
| ; compile a literal in colon defintions |
| VE_LITERAL: |
| .db $87, "literal" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_LITERAL |
| XT_LITERAL: |
| .dw DO_COLON |
| PFA_LITERAL: |
| .dw XT_COMPILE |
| .dw XT_DOLITERAL |
| .dw XT_COMMA |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/log2.html |
|---|
| 0,0 → 1,111 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/log2.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/log2.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 -- n2 ) Arithmetics |
| ; R( -- ) |
| ; logarithm base 2 or highest set bitnumber |
| VE_LOG2: |
| .db $04, "log2",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_LOG2 |
| XT_LOG2: |
| .dw PFA_LOG2 |
| PFA_LOG2: |
| movw zl, tosl |
| clr tosh |
| ldi temp0, 16 |
| mov tosl, temp0 |
| PFA_LOG2_1: |
| dec tosl |
| brmi PFA_LOG2_2 ; wrong data |
| lsl zl |
| rol zh |
| brcc PFA_LOG2_1 |
| rjmp DO_NEXT |
| PFA_LOG2_2: |
| dec tosh |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/loop.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/loop.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/loop.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr -- ) Control Structure |
| ; R( -- ) |
| ; cpmpile (loop) and resolve branch |
| VE_LOOP: |
| .db $84, "loop",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_LOOP |
| XT_LOOP: |
| .dw DO_COLON |
| PFA_LOOP: |
| .dw XT_COMPILE |
| .dw XT_DOLOOP |
| .dw XT_LRESOLVE |
| .dw XT_GRESOLVE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/lparenthesis.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/lparenthesis.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/lparenthesis.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Compiler |
| ; R( -- ) |
| ; skip everything up to the closing bracket on the same line |
| VE_LPARENTHESIS: |
| .db $81, "(" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_LPARENTHESIS |
| XT_LPARENTHESIS: |
| .dw DO_COLON |
| PFA_LPARENTHESIS: |
| .dw XT_DOLITERAL |
| .dw $29 |
| .dw XT_PARSE |
| .dw XT_DROP |
| .dw XT_DROP |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/lshift.html |
|---|
| 0,0 → 1,107 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/lshift.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/lshift.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- n3) Arithmetics |
| ; R( -- ) |
| ; logical shift left |
| VE_LSHIFT: |
| .db $06, "lshift",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_LSHIFT |
| XT_LSHIFT: |
| .dw PFA_LSHIFT |
| PFA_LSHIFT: |
| movw zl, tosl |
| loadtos |
| PFA_LSHIFT1: |
| sbiw zl, 1 |
| brmi PFA_LSHIFT2 |
| lsl tosl |
| rol tosh |
| rjmp PFA_LSHIFT1 |
| PFA_LSHIFT2: |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/macros.html |
|---|
| 0,0 → 1,152 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> macros.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> macros.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| .def zerol = r2 |
| .def zeroh = r3 |
| .def upl = r4 |
| .def uph = r5 |
| .def tosl = r6 |
| .def tosh = r7 |
| .def temp0 = r16 |
| .def temp1 = r17 |
| .def temp2 = r18 |
| .def temp3 = r19 |
| .def temp4 = r20 |
| .def temp5 = r21 |
| .def temp6 = r22 |
| .def temp7 = r23 |
| .def wl = r24 |
| .def wh = r25 |
| .macro loadtos |
| ld tosl, Y+ |
| ld tosh, Y+ |
| .endmacro |
| .macro savetos |
| st -Y, tosh |
| st -Y, tosl |
| .endmacro |
| .macro in_ |
| .if (@1 < $40) |
| in @0,@1 |
| .else |
| lds @0,@1 |
| .endif |
| .endmacro |
| .macro out_ |
| .if (@0 < $40) |
| out @0,@1 |
| .else |
| sts @0,@1 |
| .endif |
| .endmacro |
| .macro sbi_ |
| .if (@0 < $40) |
| sbi @0,@1 |
| .else |
| in_ @2,@0 |
| ori @2,exp2(@1) |
| out_ @0,@2 |
| .endif |
| .endmacro |
| .macro cbi_ |
| .if (@0 < $40) |
| cbi @0,@1 |
| .else |
| in_ @2,@0 |
| andi @2,~(exp2(@1)) |
| out_ @0,@2 |
| .endif |
| .endmacro |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/max.html |
|---|
| 0,0 → 1,105 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/max.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/max.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- n1|n2 ) Compare |
| ; R( -- ) |
| ; compare two values, leave the bigger one |
| VE_MAX: |
| .db $03, "max" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_MAX |
| XT_MAX: |
| .dw DO_COLON |
| PFA_MAX: |
| .dw XT_OVER |
| .dw XT_OVER |
| .dw XT_LESS |
| .dw XT_DOCONDBRANCH |
| .dw PFA_MAX1 |
| .dw XT_SWAP |
| PFA_MAX1: |
| .dw XT_DROP |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/min.html |
|---|
| 0,0 → 1,105 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/min.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/min.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- n1|n2 ) Compare |
| ; R( -- ) |
| ; compare two values leave the smaller one |
| VE_MIN: |
| .db $03, "min" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_MIN |
| XT_MIN: |
| .dw DO_COLON |
| PFA_MIN: |
| .dw XT_OVER |
| .dw XT_OVER |
| .dw XT_GREATER |
| .dw XT_DOCONDBRANCH |
| .dw PFA_MIN1 |
| .dw XT_SWAP |
| PFA_MIN1: |
| .dw XT_DROP |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/minus.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/minus.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/minus.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- n3 ) Arithmetics |
| ; R( -- ) |
| ; subtract |
| VE_MINUS: |
| .db $01, "-" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_MINUS |
| XT_MINUS: |
| .dw PFA_MINUS |
| PFA_MINUS: |
| ld temp0, Y+ |
| ld temp1, Y+ |
| sub temp0, tosl |
| sbc temp1, tosh |
| movw tosl, temp0 |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/mod.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/mod.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/mod.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- n3) Arithmetics |
| ; R( -- ) |
| ; remainder of division |
| VE_MOD: |
| .db $03, "mod" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_MOD |
| XT_MOD: |
| .dw DO_COLON |
| PFA_MOD: |
| .dw XT_SLASHMOD |
| .dw XT_DROP |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/mstar.html |
|---|
| 0,0 → 1,122 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/mstar.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/mstar.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- d) Arithmetics |
| ; R( -- ) |
| ; multiply 2 cells to a double cell |
| VE_MSTAR: |
| .db $02, "m*",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_MSTAR |
| XT_MSTAR: |
| .dw PFA_MSTAR |
| PFA_MSTAR: |
| movw temp0, tosl |
| loadtos |
| ; result: (temp3*temp1)* 65536 + (temp3*temp0 + temp1*temp2) * 256 + (temp0 * temp2) |
| ; low bytes |
| mul tosl,temp0 |
| movw zl, r0 |
| clr temp2 |
| clr temp3 |
| ; middle bytes |
| mul tosh, temp0 |
| add zh, r0 |
| adc temp2, r1 |
| adc temp3, zeroh |
| mul tosl, temp1 |
| add zh, r0 |
| adc temp2, r1 |
| adc temp3, zeroh |
| mul tosh, temp1 |
| add temp2, r0 |
| adc temp3, r1 |
| movw tosl, temp2 |
| savetos |
| movw tosl, zl |
| jmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/negate.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/negate.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/negate.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 -- n2 ) Logic |
| ; R( -- ) |
| ; 2-complement |
| VE_NEGATE: |
| .db $06, "negate",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_NEGATE |
| XT_NEGATE: |
| .dw DO_COLON |
| PFA_NEGATE: |
| .dw XT_INVERT |
| .dw XT_1PLUS |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/noop.html |
|---|
| 0,0 → 1,97 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/noop.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/noop.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Tools |
| ; R( -- ) |
| ; do nothing |
| VE_NOOP: |
| .db $04, "noop",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_NOOP |
| XT_NOOP: |
| .dw DO_COLON |
| PFA_NOOP: |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/not.html |
|---|
| 0,0 → 1,98 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/not.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/not.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( flag -- flag' ) Logic |
| ; R( -- ) |
| ; identical to 0= |
| VE_NOT: |
| .db $03, "not" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_NOT |
| XT_NOT: |
| .dw DO_COLON |
| PFA_NOT: |
| .dw XT_EQUALZERO |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/notequal.html |
|---|
| 0,0 → 1,106 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/notequal.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/notequal.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- flag) Compare |
| ; R( -- ) |
| ; compare two values |
| VE_NOTEQUAL: |
| .db $02, "<>", 0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_NOTEQUAL |
| XT_NOTEQUAL: |
| .dw PFA_NOTEQUAL |
| PFA_NOTEQUAL: |
| ld temp2, Y+ |
| ld temp3, Y+ |
| cp tosl, temp2 |
| cpc tosh, temp3 |
| movw zl, zerol |
| breq PFA_NOTEQUAL_EQUAL |
| sbiw zl, 1 |
| PFA_NOTEQUAL_EQUAL: |
| movw tosl, zl |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/notequalzero.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/notequalzero.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/notequalzero.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n -- flag ) Compare |
| ; R( -- ) |
| ; compare with zero |
| VE_NOTEQUALZERO: |
| .db $03, "0<>" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_NOTEQUALZERO |
| XT_NOTEQUALZERO: |
| .dw DO_COLON |
| PFA_NOTEQUALZERO: |
| .dw XT_EQUALZERO |
| .dw XT_EQUALZERO |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/number.html |
|---|
| 0,0 → 1,158 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/number.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/number.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; (addr -- n ) Numeric IO |
| ; R( -- ) |
| ; convert a word to a number, throw exception -1 on error |
| VE_NUMBER: |
| .db $06, "number",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_NUMBER |
| XT_NUMBER: |
| .dw DO_COLON |
| PFA_NUMBER: |
| ; sign flag |
| .dw XT_DOLITERAL |
| .dw 1 ; ( -- addr 1) |
| .dw XT_ZERO ; ( -- addr 1 0) |
| .dw XT_ROT ; ( -- 1 0 addr) |
| .dw XT_COUNT ; ( -- 1 0 addr' len) |
| .dw XT_ZERO |
| .dw XT_DODO |
| .dw PFA_NUMBER6 |
| PFA_NUMBER1: ; ( n addr -- ) |
| .dw XT_DUP |
| .dw XT_I |
| .dw XT_PLUS |
| .dw XT_CFETCH |
| ; now check for +/- signs |
| .dw XT_DUP |
| .dw XT_DOLITERAL |
| .dw $2d ; '-' |
| .dw XT_EQUAL |
| .dw XT_DOCONDBRANCH |
| .dw PFA_NUMBER2 |
| .dw XT_DROP |
| ; replace the sign flag |
| .dw XT_ROT |
| .dw XT_DROP |
| .dw XT_DOLITERAL |
| .dw -1 |
| .dw XT_ROT |
| .dw XT_ROT |
| .dw XT_DOBRANCH |
| .dw PFA_NUMBER4 |
| PFA_NUMBER2: |
| .dw XT_BASE |
| .dw XT_FETCH |
| .dw XT_DIGIT |
| .dw XT_EQUALZERO |
| ; check for non number characters and stop converting if found |
| .dw XT_DOCONDBRANCH |
| .dw PFA_NUMBER3 |
| .dw XT_DOLITERAL |
| .dw -13 |
| .dw XT_THROW |
| PFA_NUMBER3: |
| .dw XT_ROT |
| .dw XT_BASE |
| .dw XT_FETCH |
| .dw XT_MUL |
| .dw XT_PLUS |
| .dw XT_SWAP |
| PFA_NUMBER4: |
| .dw XT_DOLOOP |
| .dw PFA_NUMBER1 |
| PFA_NUMBER6: |
| .dw XT_DROP |
| ; incorporate sign into number |
| .dw XT_SWAP |
| .dw XT_LESSZERO |
| .dw XT_DOCONDBRANCH |
| .dw PFA_NUMBER5 |
| .dw XT_NEGATE |
| PFA_NUMBER5: |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/of.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/of.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/of.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Compiler |
| ; R( -- ) |
| ; see case |
| VE_OF: |
| .db $82, "of",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_OF |
| XT_OF: |
| .dw DO_COLON |
| PFA_OF: |
| .dw XT_COMPILE |
| .dw XT_OVER |
| .dw XT_COMPILE |
| .dw XT_EQUAL |
| .dw XT_IF |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/or.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/or.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/or.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- n3 ) Logic |
| ; R( -- ) |
| ; logical or |
| VE_OR: |
| .db $02, "or",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_OR |
| XT_OR: |
| .dw PFA_OR |
| PFA_OR: |
| ld temp0, Y+ |
| ld temp1, Y+ |
| or tosl, temp0 |
| or tosh, temp1 |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/over.html |
|---|
| 0,0 → 1,103 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/over.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/over.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- n1 n2 n1 ) Stack |
| ; R( -- ) |
| ; stack manipulation |
| VE_OVER: |
| .db $04, "over",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_OVER |
| XT_OVER: |
| .dw PFA_OVER |
| PFA_OVER: |
| movw temp0, tosl |
| ldd tosl, Y+0 |
| ldd tosh, Y+1 |
| st -Y, temp1 |
| st -Y, temp0 |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/pad.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/pad.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/pad.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr ) System Pointer |
| ; R( -- ) |
| ; scratch buffer. |
| VE_PAD: |
| .db $03, "pad" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_PAD |
| XT_PAD: |
| .dw DO_COLON |
| PFA_PAD: |
| .dw XT_HEAP |
| .dw XT_EFETCH |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/parse.html |
|---|
| 0,0 → 1,109 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/parse.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/parse.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( char "ccc" -- c-addr u ) String |
| ; R( -- ) |
| ; in input buffer parse ccc delimited string by the delimiter char. |
| VE_PARSE: |
| .db $5, "parse" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_PARSE |
| XT_PARSE: |
| .dw DO_COLON |
| PFA_PARSE: |
| .dw XT_TO_R ; ( -- ) |
| .dw XT_SOURCE ; ( -- addr len) |
| .dw XT_G_IN ; ( -- addr len >in) |
| .dw XT_FETCH |
| .dw XT_SLASHSTRING ; ( -- addr' len' ) |
| .dw XT_R_FROM ; ( -- addr' len' c) |
| .dw XT_CSCAN ; ( -- addr' len'') |
| .dw XT_DUP ; ( -- addr' len'' len'') |
| .dw XT_1PLUS |
| .dw XT_G_IN ; ( -- addr' len'' len'' >in) |
| .dw XT_PLUSSTORE ; ( -- addr' len') |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/pause.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/pause.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/pause.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Multitasking |
| ; R( -- ) |
| ; fetch pause vector and execute it. may make a context/task switch |
| VE_PAUSE: |
| .db $05, "pause" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_PAUSE |
| XT_PAUSE: |
| .dw PFA_DODEFER |
| PFA_PAUSE: |
| .dw heap |
| .set heap = heap + CELLSIZE |
| .dw XT_RDEFERFETCH |
| .dw XT_RDEFERSTORE |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/plus.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/plus.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/plus.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- n3) Arithmetics |
| ; R( -- ) |
| ; addition |
| VE_PLUS: |
| .db $01, "+" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_PLUS |
| XT_PLUS: |
| .dw PFA_PLUS |
| PFA_PLUS: |
| ld temp0, Y+ |
| ld temp1, Y+ |
| add tosl, temp0 |
| adc tosh, temp1 |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/plusloop.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/plusloop.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/plusloop.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr -- ) Control Structure |
| ; R( -- ) |
| ; compile +loop and resolve branch |
| VE_PLOOP: |
| .db $85, "+loop" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_PLOOP |
| XT_PLOOP: |
| .dw DO_COLON |
| PFA_PLOOP: |
| .dw XT_COMPILE |
| .dw XT_DOPLUSLOOP |
| .dw XT_LRESOLVE |
| .dw XT_GRESOLVE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/plusstore.html |
|---|
| 0,0 → 1,106 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/plusstore.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/plusstore.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n addr -- ) Arithmetics |
| ; R( -- ) |
| ; add value to content of RAM address |
| VE_PLUSSTORE: |
| .db $02, "+!",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_PLUSSTORE |
| XT_PLUSSTORE: |
| .dw PFA_PLUSSTORE |
| PFA_PLUSSTORE: |
| movw zl, tosl |
| loadtos |
| ldd temp2, Z+0 |
| ldd temp3, Z+1 |
| add tosl, temp2 |
| adc tosh, temp3 |
| std Z+0, tosl |
| std Z+1, tosh |
| loadtos |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/qdo.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/qdo.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/qdo.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr ) Control Structure |
| ; R( -- ) |
| ; start do .. [+]loop |
| VE_QDO: |
| .db $83, "?do" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_QDO |
| XT_QDO: |
| .dw DO_COLON |
| PFA_QDO: |
| .dw XT_COMPILE |
| .dw XT_DOQDO |
| .dw XT_GMARK |
| .dw XT_LMARK |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/qdup.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/qdup.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/qdup.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 -- [ n1 n1 ] | 0) Stack |
| ; R( -- ) |
| ; duplicate TOS if non-zero |
| VE_QDUP: |
| .db $04, "?dup",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_QDUP |
| XT_QDUP: |
| .dw PFA_QDUP |
| PFA_QDUP: |
| mov temp0, tosl |
| or temp0, tosh |
| breq PFA_QDUP1 |
| savetos |
| PFA_QDUP1: |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/qexecute.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/qexecute.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/qexecute.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( xt|0 -- ) System |
| ; R( -- ) |
| ; execute XT if non-zero |
| VE_QEXECUTE: |
| .db $08, "?execute",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_QEXECUTE |
| XT_QEXECUTE: |
| .dw DO_COLON |
| PFA_QEXECUTE: |
| .dw XT_QDUP |
| .dw XT_DOCONDBRANCH |
| .dw PFA_EXECUTE1 |
| .dw XT_EXECUTE |
| PFA_EXECUTE1: |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/quit.html |
|---|
| 0,0 → 1,150 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/quit.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/quit.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) System |
| ; R( -- ) |
| ; main loop of amforth. accept - interpret in an endless loop |
| VE_QUIT: |
| .db $04, "quit", 0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_QUIT |
| XT_QUIT: |
| .dw DO_COLON |
| PFA_QUIT: |
| .dw XT_SP0 |
| .dw XT_SP_STORE |
| .dw XT_RP0 |
| .dw XT_RP_STORE |
| .dw XT_HEX |
| .dw XT_ZERO |
| .dw XT_STATE |
| .dw XT_STORE |
| PFA_QUIT2: |
| .dw XT_STATE |
| .dw XT_FETCH |
| .dw XT_EQUALZERO |
| .dw XT_DOCONDBRANCH |
| .dw PFA_QUIT4 |
| .dw XT_CR |
| .dw XT_SLITERAL |
| .db 2, "> ",0 |
| .dw XT_ITYPE |
| PFA_QUIT4: |
| .dw XT_REFILL |
| .dw XT_DOCONDBRANCH |
| .dw PFA_QUIT2 |
| .dw XT_DOLITERAL |
| .dw XT_INTERPRET |
| .dw XT_CATCH |
| .dw XT_QDUP |
| .dw XT_DOCONDBRANCH |
| .dw PFA_QUIT3 |
| .dw XT_DUP |
| .dw XT_DOLITERAL |
| .dw -2 |
| .dw XT_LESS |
| .dw XT_DOCONDBRANCH |
| .dw PFA_QUIT5 |
| .dw XT_SLITERAL |
| .db 3, " ??" |
| .dw XT_ITYPE |
| .dw XT_DECIMAL |
| .dw XT_DOT |
| .dw XT_G_IN |
| .dw XT_FETCH |
| .dw XT_DOT |
| PFA_QUIT5: |
| .dw XT_DOBRANCH |
| .dw PFA_QUIT |
| PFA_QUIT3: |
| .dw XT_SLITERAL |
| .db 3, " ok" |
| .dw XT_ITYPE |
| .dw XT_DOBRANCH |
| .dw PFA_QUIT2 |
| .dw XT_EXIT ; never reached |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/r_fetch.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/r_fetch.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/r_fetch.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- n) Stack |
| ; R( n -- n ) |
| ; fetch content of TOR |
| VE_R_FETCH: |
| .db $02, "r@",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_R_FETCH |
| XT_R_FETCH: |
| .dw PFA_R_FETCH |
| PFA_R_FETCH: |
| savetos |
| pop tosl |
| pop tosh |
| push tosh |
| push tosl |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/r_from.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/r_from.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/r_from.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- n ) Stack |
| ; R( n --) |
| ; move TOR to TOS |
| VE_R_FROM: |
| .db $02, "r>", 0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_R_FROM |
| XT_R_FROM: |
| .dw PFA_R_FROM |
| PFA_R_FROM: |
| savetos |
| pop tosl |
| pop tosh |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/rdefer-fetch.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/rdefer-fetch.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/rdefer-fetch.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( xt1 -- xt2 ) System |
| ; R( -- ) |
| ; does the real defer@ for ram defers |
| ;VE_RDEFERFETCH: |
| ; .db $07, "Rdefer@" |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_RDEFERFETCH |
| XT_RDEFERFETCH: |
| .dw DO_COLON |
| PFA_RDEFERFETCH: |
| .dw XT_1PLUS ; >body |
| .dw XT_IFETCH |
| .dw XT_FETCH |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/rdefer-store.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/rdefer-store.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/rdefer-store.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( xt1 xt2 -- ) System |
| ; R( -- ) |
| ; does the real defer! for ram defers |
| ;VE_RDEFERSTORE: |
| ; .db $07, "Rdefer!" |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_RDEFERSTORE |
| XT_RDEFERSTORE: |
| .dw DO_COLON |
| PFA_RDEFERSTORE: |
| .dw XT_1PLUS |
| .dw XT_IFETCH |
| .dw XT_STORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/rdefer.html |
|---|
| 0,0 → 1,112 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/rdefer.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/rdefer.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n <name> -- ) Compiler |
| ; R( -- ) |
| ; creates a RAM based defer vector |
| VE_RDEFER: |
| .db $06, "Rdefer",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_RDEFER |
| XT_RDEFER: |
| .dw DO_COLON |
| PFA_RDEFER: |
| .dw XT_DOCREATE |
| .dw XT_COMPILE |
| .dw PFA_DODEFER |
| .dw XT_HEAP |
| .dw XT_EFETCH |
| .dw XT_COMMA |
| .dw XT_DOLITERAL |
| .dw 2 |
| .dw XT_ALLOT |
| .dw XT_COMPILE |
| .dw XT_RDEFERFETCH |
| .dw XT_COMPILE |
| .dw XT_RDEFERSTORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/recurse.html |
|---|
| 0,0 → 1,109 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/recurse.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/recurse.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Compiler |
| ; R( -- ) |
| ; compile XT of the word beeing currently defined into dictionary (! not conforming to ANS!) |
| VE_RECURSE: |
| .db $87, "recurse" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_RECURSE |
| XT_RECURSE: |
| .dw DO_COLON |
| PFA_RECURSE: |
| .dw XT_HEAD |
| .dw XT_EFETCH |
| .dw XT_DUP |
| .dw XT_IFETCH |
| .dw XT_DOLITERAL |
| .dw $001f |
| .dw XT_AND |
| .dw XT_2SLASH |
| .dw XT_1PLUS |
| .dw XT_PLUS |
| .dw XT_1PLUS |
| .dw XT_COMMA |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/refill.html |
|---|
| 0,0 → 1,108 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/refill.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/refill.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- f ) IO |
| ; R( -- ) |
| ; refills the input buffer |
| VE_REFILL: |
| .db $06, "refill",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_REFILL |
| XT_REFILL: |
| .dw DO_COLON |
| PFA_REFILL: |
| .dw XT_TIB |
| .dw XT_DOLITERAL |
| .dw 80 |
| .dw XT_ACCEPT |
| .dw XT_NUMBERTIB |
| .dw XT_STORE |
| .dw XT_ZERO |
| .dw XT_G_IN |
| .dw XT_STORE |
| .dw XT_DOLITERAL |
| .dw -1 |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/repeat.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/repeat.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/repeat.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; (addr1 -- addr2 ) Control Structure |
| ; R( -- ) |
| ; go back to begin |
| VE_REPEAT: |
| .db $86, "repeat",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_REPEAT |
| XT_REPEAT: |
| .dw DO_COLON |
| PFA_REPEAT: |
| .dw XT_AGAIN |
| .dw XT_GRESOLVE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/rightbracket.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/rightbracket.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/rightbracket.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Compiler |
| ; R( -- ) |
| ; turn on compiler |
| VE_RBRACKET: |
| .db $01, "]" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_RBRACKET |
| XT_RBRACKET: |
| .dw DO_COLON |
| PFA_RBRACKET: |
| .dw XT_DOLITERAL |
| .dw 1 |
| .dw XT_STATE |
| .dw XT_STORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/rot.html |
|---|
| 0,0 → 1,107 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/rot.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/rot.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 n3 -- n2 n3 n1) Stack |
| ; R( -- ) |
| ; stack manupulation |
| VE_ROT: |
| .db $03, "rot" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_ROT |
| XT_ROT: |
| .dw PFA_ROT |
| PFA_ROT: |
| movw temp0, tosl |
| ld temp2, Y+ |
| ld temp3, Y+ |
| loadtos |
| st -Y, temp3 |
| st -Y, temp2 |
| st -Y, temp1 |
| st -Y, temp0 |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/rp0.html |
|---|
| 0,0 → 1,116 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/rp0.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/rp0.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr) Stackpointer |
| ; R( -- ) |
| ; start value of return stack |
| VE_RP0: |
| .db $03, "rp0" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_RP0 |
| XT_RP0: |
| .dw DO_COLON |
| PFA_RP0: |
| .dw XT_DORP0 |
| .dw XT_FETCH |
| .dw XT_EXIT |
| XT_DORP0: |
| .dw PFA_DOUSER |
| PFA_DORP0: |
| .dw 2 |
| ; ( -- addr) Stackpointer |
| ; R( -- ) |
| ; address of variable to store the return stack pointer for inactive tasks |
| VE_RP: |
| .db $02, "rp",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_RP |
| XT_RP: |
| .dw PFA_DOUSER |
| PFA_RP: |
| .dw 4 |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/rpfetch.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/rpfetch.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/rpfetch.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- n) Stackpointer |
| ; R( -- ) |
| ; current return stack pointer address |
| VE_RP_FETCH: |
| .db $03, "rp@" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_RP_FETCH |
| XT_RP_FETCH: |
| .dw PFA_RP_FETCH |
| PFA_RP_FETCH: |
| savetos |
| in tosl, SPL |
| in tosh, SPH |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/rpstore.html |
|---|
| 0,0 → 1,103 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/rpstore.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/rpstore.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n -- ) Stackpointer |
| ; R( -- xy) |
| ; set return stack pointer |
| VE_RP_STORE: |
| .db $03, "rp!" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_RP_STORE |
| XT_RP_STORE: |
| .dw PFA_RP_STORE |
| PFA_RP_STORE: |
| in temp2, SREG |
| cli |
| out SPL, tosl |
| out SPH, tosh |
| out SREG, temp2 |
| loadtos |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/rshift.html |
|---|
| 0,0 → 1,107 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/rshift.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/rshift.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- n3 ) Arithmetics |
| ; R( -- ) |
| ; logical shift right |
| VE_RSHIFT: |
| .db $06, "rshift",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_RSHIFT |
| XT_RSHIFT: |
| .dw PFA_RSHIFT |
| PFA_RSHIFT: |
| movw zl, tosl |
| loadtos |
| PFA_RSHIFT1: |
| sbiw zl, 1 |
| brmi PFA_RSHIFT2 |
| lsr tosh |
| ror tosl |
| rjmp PFA_RSHIFT1 |
| PFA_RSHIFT2: |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/s_to_d.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/s_to_d.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/s_to_d.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 -- d1 ) Conversion |
| ; R( -- ) |
| ; extend (signed) single cell value to double cell |
| VE_S2D: |
| .db $03, "s>d" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_S2D |
| XT_S2D: |
| .dw PFA_S2D |
| PFA_S2D: |
| clr zl |
| sbrc tosh,7 |
| ser zl |
| st -Y, zl |
| st -Y, zl |
| jmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/scomma.html |
|---|
| 0,0 → 1,127 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/scomma.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/scomma.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr len -- ) Compiler |
| ; R( -- ) |
| ; compiles a string from RAM to Flash |
| VE_SCOMMA: |
| .db $02,"s",$2c,0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_SCOMMA |
| XT_SCOMMA: |
| .dw DO_COLON |
| PFA_SCOMMA: |
| .dw XT_DUP |
| .dw XT_2SLASH ; ( -- addr n k ) |
| .dw XT_1PLUS ; ( -- addr n k+1) |
| .dw XT_TO_R |
| .dw XT_OVER ; ( -- addr n addr) |
| .dw XT_CFETCH ; ( -- addr n c ) |
| .dw XT_DOLITERAL |
| .dw 8 |
| .dw XT_LSHIFT |
| .dw XT_OR |
| .dw XT_COMMA ; ( -- addr ) |
| .dw XT_1PLUS ; ( -- addr+1) |
| .dw XT_R_FROM ; ( -- addr+1 k+1) |
| .dw XT_1MINUS ; ( -- addr+1 k) |
| .dw XT_QDUP ; ( -- addr+1 [k k | 0]) |
| .dw XT_DOCONDBRANCH |
| .dw PFA_SCOMMA2 |
| .dw XT_ZERO ; ( -- addr+1 k 0) |
| .dw XT_DODO ; ( -- addr) |
| .dw PFA_SCOMMA2 |
| PFA_SCOMMA1: |
| .dw XT_DUP ; ( -- addr addr ) |
| .dw XT_FETCH ; ( -- addr c1c2 ) |
| .dw XT_COMMA ; ( -- addr ) |
| .dw XT_1PLUS ; ( -- addr+1 ) |
| .dw XT_1PLUS ; ( -- addr+2 ) |
| .dw XT_DOLOOP |
| .dw PFA_SCOMMA1 |
| PFA_SCOMMA2: |
| .dw XT_DROP ; ( -- ) |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/semicolon.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/semicolon.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/semicolon.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Compiler |
| ; R( -- ) |
| ; finish colon defintion, compiles (exit) and returns to interpreter state |
| VE_SEMICOLON: |
| .db $81, $3b |
| .dw VE_HEAD |
| .set VE_HEAD = VE_SEMICOLON |
| XT_SEMICOLON: |
| .dw DO_COLON |
| PFA_SEMICOLON: |
| .dw XT_COMPILE |
| .dw XT_EXIT |
| .dw XT_LBRACKET |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/sharp.html |
|---|
| 0,0 → 1,116 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/sharp.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/sharp.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( d1 -- d2) Numeric IO |
| ; R( -- ) |
| ; compiles next digit to HLD |
| VE_SHARP: |
| .db $01, "#" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_SHARP |
| XT_SHARP: |
| .dw DO_COLON |
| PFA_SHARP: |
| .dw XT_BASE |
| .dw XT_FETCH ; ( -- d1 b) |
| .dw XT_UMSLASHMOD ; ( -- rem quot) |
| .dw XT_S2D ; ( -- rem d2) |
| .dw XT_ROT |
| .dw XT_DOLITERAL |
| .dw $30 |
| .dw XT_PLUS |
| .dw XT_DUP |
| .dw XT_DOLITERAL |
| .dw $39 |
| .dw XT_GREATER |
| .dw XT_DOCONDBRANCH |
| .dw PFA_SHARP1 |
| .dw XT_DOLITERAL |
| .dw $7 |
| .dw XT_PLUS |
| PFA_SHARP1: |
| .dw XT_HOLD |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/sharp_g.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/sharp_g.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/sharp_g.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( d1 -- addr count ) Numeric IO |
| ; R( -- ) |
| ; convert HLD buffer to a usable string |
| VE_SHARP_G: |
| .db $02, "#>",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_SHARP_G |
| XT_SHARP_G: |
| .dw DO_COLON |
| PFA_SHARP_G: |
| .dw XT_DROP |
| .dw XT_DROP |
| .dw XT_HLD |
| .dw XT_COUNT |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/sharp_s.html |
|---|
| 0,0 → 1,104 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/sharp_s.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/sharp_s.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( d1 -- 0) Numeric IO |
| ; R( -- ) |
| ; call # until a value of zero is reached |
| VE_SHARP_S: |
| .db $02, "#s",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_SHARP_S |
| XT_SHARP_S: |
| .dw DO_COLON |
| PFA_SHARP_S: |
| .dw XT_SHARP |
| .dw XT_OVER |
| .dw XT_OVER |
| .dw XT_OR |
| .dw XT_EQUALZERO |
| .dw XT_DOCONDBRANCH |
| .dw PFA_SHARP_S |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/sharptib.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/sharptib.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/sharptib.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr ) System |
| ; R( -- ) |
| ; address of variable holding the number of characters in TIB |
| VE_NUMBERTIB: |
| .db $04, "#tib",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_NUMBERTIB |
| XT_NUMBERTIB: |
| .dw PFA_DOVARIABLE |
| PFA_NUMBERTIB: |
| .dw heap |
| .set heap = heap + CELLSIZE |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/sign.html |
|---|
| 0,0 → 1,104 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/sign.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/sign.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n -- ) Numeric IO |
| ; R( -- ) |
| ; place a - in HLD if value is negative |
| VE_SIGN: |
| .db $04, "sign",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_SIGN |
| XT_SIGN: |
| .dw DO_COLON |
| PFA_SIGN: |
| .dw XT_LESSZERO |
| .dw XT_DOCONDBRANCH |
| .dw PFA_SIGN1 |
| .dw XT_DOLITERAL |
| .dw $2d |
| .dw XT_HOLD |
| PFA_SIGN1: |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/slash.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/slash.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/slash.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- n3) Arithmetics |
| ; R( -- ) |
| ; diviion |
| VE_SLASH: |
| .db $01, "/" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_SLASH |
| XT_SLASH: |
| .dw DO_COLON |
| PFA_SLASH: |
| .dw XT_SLASHMOD |
| .dw XT_SWAP |
| .dw XT_DROP |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/slashkey.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/slashkey.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/slashkey.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- f) Character IO |
| ; R( -- ) |
| ; fetch 'key? vector and execute it if not zero. Leave true if a character can be read, false otherwise |
| VE_SLASHKEY: |
| .db $04, "/key",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_SLASHKEY |
| XT_SLASHKEY: |
| .dw PFA_DODEFER |
| PFA_SLASHKEY: |
| .dw 20 |
| .dw XT_UDEFERFETCH |
| .dw XT_UDEFERSTORE |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/slashmod.html |
|---|
| 0,0 → 1,151 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/slashmod.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/slashmod.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- rem quot) Arithmetics |
| ; R( -- ) |
| ; signed division n1/n2 with remainder |
| VE_SLASHMOD: |
| .db $04, "/mod",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_SLASHMOD |
| XT_SLASHMOD: |
| .dw PFA_SLASHMOD |
| PFA_SLASHMOD: |
| movw temp2, tosl |
| ld temp0, Y+ |
| ld temp1, Y+ |
| mov temp6,temp1 ;move dividend High to sign register |
| eor temp6,temp3 ;xor divisor High with sign register |
| sbrs temp1,7 ;if MSB in dividend set |
| rjmp PFA_SLASHMOD_1 |
| com temp1 ; change sign of dividend |
| com temp0 |
| subi temp0,low(-1) |
| sbci temp1,high(-1) |
| PFA_SLASHMOD_1: |
| sbrs temp3,7 ;if MSB in divisor set |
| rjmp PFA_SLASHMOD_2 |
| com temp3 ; change sign of divisor |
| com temp2 |
| subi temp2,low(-1) |
| sbci temp3,high(-1) |
| PFA_SLASHMOD_2: clr temp4 ;clear remainder Low byte |
| sub temp5,temp5;clear remainder High byte and carry |
| ldi temp7,17 ;init loop counter |
| PFA_SLASHMOD_3: rol temp0 ;shift left dividend |
| rol temp1 |
| dec temp7 ;decrement counter |
| brne PFA_SLASHMOD_5 ;if done |
| sbrs temp6,7 ; if MSB in sign register set |
| rjmp PFA_SLASHMOD_4 |
| com temp1 ; change sign of result |
| com temp0 |
| subi temp0,low(-1) |
| sbci temp1,high(-1) |
| PFA_SLASHMOD_4: rjmp PFA_SLASHMODmod_done ; return |
| PFA_SLASHMOD_5: rol temp4 ;shift dividend into remainder |
| rol temp5 |
| sub temp4,temp2 ;remainder = remainder - divisor |
| sbc temp5,temp3 ; |
| brcc PFA_SLASHMOD_6 ;if result negative |
| add temp4,temp2 ; restore remainder |
| adc temp5,temp3 |
| clc ; clear carry to be shifted into result |
| rjmp PFA_SLASHMOD_3 ;else |
| PFA_SLASHMOD_6: sec ; set carry to be shifted into result |
| rjmp PFA_SLASHMOD_3 |
| PFA_SLASHMODmod_done: |
| ; put remainder on stack |
| st -Y,temp5 |
| st -Y,temp4 |
| ; put quotient on stack |
| movw tosl, temp0 |
| jmp_ DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/slashstring.html |
|---|
| 0,0 → 1,107 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/slashstring.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/slashstring.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr1 u1 n-- addr2 u2 ) String |
| ; R( -- ) |
| ; adjust string from addr1 to addr1+n, reduce length from u1 to u2 |
| VE_SLASHSTRING: |
| .db $7, "/string" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_SLASHSTRING |
| XT_SLASHSTRING: |
| .dw DO_COLON |
| PFA_SLASHSTRING: |
| .dw XT_OVER ; ( -- addr1 u1 n u1) |
| .dw XT_MIN ; ( -- addr1 u1 n|u1) |
| .dw XT_ROT ; ( -- u1 n addr1 ) |
| .dw XT_OVER ; ( -- u1 n addr1 n) |
| .dw XT_PLUS ; ( -- u1 n addr2 ) |
| .dw XT_ROT ; ( -- n addr2 u1) |
| .dw XT_ROT ; ( -- addr2 u1 n) |
| .dw XT_MINUS ; ( -- addr2 u2) |
| .dw XT_EXIT |
| ; : /STRING SWAP OVER - >R + R> ; |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/sleep.html |
|---|
| 0,0 → 1,98 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/sleep.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/sleep.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Interrupt |
| ; R( -- ) |
| ; calls the MCU sleep instruction. Not useful itself! |
| VE_SLEEP: |
| .db $05, "sleep" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_SLEEP |
| XT_SLEEP: |
| .dw PFA_SLEEP |
| PFA_SLEEP: |
| sleep |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/sliteral.html |
|---|
| 0,0 → 1,106 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/sliteral.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/sliteral.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr n) Compiler |
| ; R( -- ) |
| ; runtime portion of s" |
| ;VE_SLITERAL: |
| ; .db 10,"(sliteral)",0 |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_SLITERAL |
| XT_SLITERAL: |
| .dw DO_COLON |
| PFA_SLITERAL: |
| .dw XT_R_FROM ; ( -- addr ) |
| .dw XT_DUP ; ( -- addr addr ) |
| .dw XT_ICOUNT ; ( -- addr addr' n ) |
| .dw XT_ROT ; ( -- addr' n addr ) |
| .dw XT_OVER ; ( -- addr' n addr n) |
| .dw XT_2SLASH ; ( -- addr' n addr k ) |
| .dw XT_1PLUS ; ( -- addr' n addr k+1 ) |
| .dw XT_PLUS ; ( -- addr' n addr'' ) |
| .dw XT_TO_R ; ( -- ) |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/source.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/source.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/source.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr1 u1 n-- addr2 u2 ) System |
| ; R( -- ) |
| ; adjust string from addr1 to addr1+n, reduce length from u1 to u2 |
| VE_SOURCE: |
| .db 6, "source",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_SOURCE |
| XT_SOURCE: |
| .dw DO_COLON |
| PFA_SOURCE: |
| .dw XT_TIB |
| .dw XT_NUMBERTIB |
| .dw XT_FETCH |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/sp0.html |
|---|
| 0,0 → 1,116 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/sp0.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/sp0.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr) Stackpointer |
| ; R( -- ) |
| ; start of data stack |
| VE_SP0: |
| .db $03, "sp0" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_SP0 |
| XT_SP0: |
| .dw DO_COLON |
| PFA_SP0: |
| .dw XT_DOSP0 |
| .dw XT_FETCH |
| .dw XT_EXIT |
| XT_DOSP0: |
| .dw PFA_DOUSER |
| PFA_DOSP0: |
| .dw 6 |
| ; ( -- addr) Stackpointer |
| ; R( -- ) |
| ; address of variable to store data stack pointer for inactive tasks |
| VE_SP: |
| .db $02, "sp",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_SP |
| XT_DOSP: |
| .dw PFA_DOUSER |
| PFA_DOSP: |
| .dw 8 |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/space.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/space.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/space.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Character IO |
| ; R( -- ) |
| ; emits a space (bl) |
| VE_SPACE: |
| .db $05, "space" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_SPACE |
| XT_SPACE: |
| .dw DO_COLON |
| PFA_SPACE: |
| .dw XT_BL |
| .dw XT_EMIT |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/spfetch.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/spfetch.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/spfetch.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- n) Stackpointer |
| ; R( -- ) |
| ; current data stack pointer |
| VE_SP_FETCH: |
| .db $03, "sp@" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_SP_FETCH |
| XT_SP_FETCH: |
| .dw PFA_SP_FETCH |
| PFA_SP_FETCH: |
| savetos |
| movw tosl, yl |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/spstore.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/spstore.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/spstore.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr -- i*x) Stackpointer |
| ; R( -- ) |
| ; data stack pointer changed to addr |
| VE_SP_STORE: |
| .db $03, "sp!" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_SP_STORE |
| XT_SP_STORE: |
| .dw PFA_SP_STORE |
| PFA_SP_STORE: |
| movw yl, tosl |
| loadtos |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/squote.html |
|---|
| 0,0 → 1,103 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/squote.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/squote.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( <cchar> -- ) Compiler |
| ; R( -- ) |
| ; compiles a string to flash, at runtime leaves ( -- addr count) on stack |
| VE_SQUOTE: |
| .db $82,"s",$22,0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_SQUOTE |
| XT_SQUOTE: |
| .dw DO_COLON |
| PFA_SQUOTE: |
| .dw XT_DOLITERAL |
| .dw $22 |
| .dw XT_PARSE ; ( -- addr n) |
| .dw XT_COMPILE |
| .dw XT_SLITERAL ; ( -- addr n) |
| .dw XT_SCOMMA |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/star.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/star.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/star.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- n3 ) Arithmetics |
| ; R( -- ) |
| ; multiply routine |
| VE_MUL: |
| .db $01, "*" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_MUL |
| XT_MUL: |
| .dw DO_COLON |
| PFA_MUL: |
| .dw XT_MSTAR |
| .dw XT_D2S |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/starslash.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/starslash.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/starslash.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; (n1 n2 n3 -- n4) Arithmetics |
| ; R( -- ) |
| ; signed multiply and division with double precision intermediate |
| VE_STARSLASH: |
| .db $02, "*/",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_STARSLASH |
| XT_STARSLASH: |
| .dw DO_COLON |
| PFA_STARSLASH: |
| .dw XT_STARSLASHMOD |
| .dw XT_SWAP |
| .dw XT_DROP |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/starslashmod.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/starslashmod.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/starslashmod.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 n3 -- rem quot) Arithmetics |
| ; R( -- ) |
| ; signed multiply and division with double precision intermediate and remainder |
| VE_STARSLASHMOD: |
| .db $05, "*/mod" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_STARSLASHMOD |
| XT_STARSLASHMOD: |
| .dw DO_COLON |
| PFA_STARSLASHMOD: |
| .dw XT_TO_R |
| .dw XT_MSTAR |
| .dw XT_R_FROM |
| .dw XT_UMSLASHMOD |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/state.html |
|---|
| 0,0 → 1,98 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/state.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/state.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr ) Compiler |
| ; R( -- ) |
| ; system state |
| VE_STATE: |
| .db $05, "state" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_STATE |
| XT_STATE: |
| .dw PFA_DOVARIABLE |
| PFA_STATE: |
| .dw heap |
| .set heap = heap + CELLSIZE |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/store.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/store.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/store.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n addr -- ) Memory |
| ; R( -- ) |
| ; write 16bit to RAM memory (or IO or CPU registers) |
| VE_STORE: |
| .db $01, "!" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_STORE |
| XT_STORE: |
| .dw PFA_STORE |
| PFA_STORE: |
| movw zl, tosl |
| loadtos |
| std Z+0, tosl |
| std Z+1, tosh |
| loadtos |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/swap.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/swap.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/swap.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- n2 n1) Stack |
| ; R( -- ) |
| ; stack manipulation |
| VE_SWAP: |
| .db $04, "swap",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_SWAP |
| XT_SWAP: |
| .dw PFA_SWAP |
| PFA_SWAP: |
| movw temp0, tosl |
| loadtos |
| st -Y, temp1 |
| st -Y, temp0 |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/then.html |
|---|
| 0,0 → 1,98 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/then.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/then.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr -- ) Compiler |
| ; R( -- ) |
| ; finish if |
| VE_THEN: |
| .db $84, "then",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_THEN |
| XT_THEN: |
| .dw DO_COLON |
| PFA_THEN: |
| .dw XT_GRESOLVE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/throw.html |
|---|
| 0,0 → 1,117 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/throw.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/throw.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n -- ) Exceptions |
| ; R( -- ) |
| ; throw an exception |
| VE_THROW: |
| .db $05, "throw" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_THROW |
| XT_THROW: |
| .dw DO_COLON |
| PFA_THROW: |
| .dw XT_DUP |
| .dw XT_EQUALZERO |
| .dw XT_DOCONDBRANCH |
| .dw PFA_THROW1 |
| .dw XT_DROP |
| .dw XT_EXIT |
| PFA_THROW1: |
| .dw XT_HANDLER |
| .dw XT_FETCH |
| .dw XT_RP_STORE |
| .dw XT_R_FROM |
| .dw XT_HANDLER |
| .dw XT_STORE |
| .dw XT_R_FROM |
| .dw XT_SWAP |
| .dw XT_TO_R |
| .dw XT_SP_STORE |
| .dw XT_DROP |
| .dw XT_R_FROM |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/tib.html |
|---|
| 0,0 → 1,98 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/tib.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/tib.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr ) System Pointer |
| ; R( -- ) |
| ; terminal input buffer address |
| VE_TIB: |
| .db $03, "tib" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_TIB |
| XT_TIB: |
| .dw PFA_DOVARIABLE |
| PFA_TIB: |
| .dw heap |
| .set heap = heap + TIBSIZE |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/tick.html |
|---|
| 0,0 → 1,107 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/tick.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/tick.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- XT ) Dictionary |
| ; R( -- ) |
| ; search dictionary, returns XT or throw an exception -13 |
| VE_TICK: |
| .db $01, "'" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_TICK |
| XT_TICK: |
| .dw DO_COLON |
| PFA_TICK: |
| .dw XT_BL |
| .dw XT_WORD |
| .dw XT_FIND |
| .dw XT_EQUALZERO |
| .dw XT_DOCONDBRANCH |
| .dw PFA_TICK1 |
| .dw XT_DOLITERAL |
| .dw -13 |
| .dw XT_THROW |
| PFA_TICK1: |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/to.html |
|---|
| 0,0 → 1,136 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/to.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/to.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n <name> -- ) Tools |
| ; R( --) |
| ; store the TOS to value (an EEPROM 16bit cell) |
| VE_TO: |
| .db $82, "to", 0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_TO |
| XT_TO: |
| .dw DO_COLON |
| PFA_TO: |
| .dw XT_TICK |
| .dw XT_1PLUS ; to body |
| .dw XT_STATE |
| .dw XT_FETCH |
| .dw XT_DOCONDBRANCH |
| .dw PFA_TO1 |
| .dw XT_COMPILE |
| .dw XT_DOTO |
| .dw XT_COMMA |
| .dw XT_EXIT |
| PFA_TO1: |
| .dw XT_IFETCH |
| .dw XT_ESTORE |
| .dw XT_EXIT |
| ; ( n -- ) Tools |
| ; R( IP -- IP+1) |
| ; runtime portion of to |
| ;VE_DOTO: |
| ; .db $04, "(to)", 0 |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_VALUE |
| XT_DOTO: |
| .dw DO_COLON |
| PFA_DOTO: |
| .dw XT_R_FROM |
| .dw XT_DUP |
| .dw XT_1PLUS |
| .dw XT_TO_R |
| .dw XT_IFETCH |
| .dw XT_IFETCH |
| .dw XT_ESTORE |
| .DW XT_EXIT |
| ; : (to) r> dup 1+ >r i@ e! ; |
| ; : to ( x <name> -- ) |
| ; ' 1+ state @ |
| ; if compile (to) , exit then |
| ; i@ e! ; immediate |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/to_r.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/to_r.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/to_r.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n -- ) Stack |
| ; R( -- n) |
| ; move TOS to TOR |
| VE_TO_R: |
| .db $02, ">r", 0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_TO_R |
| XT_TO_R: |
| .dw PFA_TO_R |
| PFA_TO_R: |
| push tosh |
| push tosl |
| loadtos |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/turnkey.html |
|---|
| 0,0 → 1,99 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/turnkey.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/turnkey.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- eaddr) System Pointer |
| ; R( -- ) |
| ; address of the variable that holds an XT to be started by cold before quit takes over |
| VE_TURNKEY: |
| .db $07, "turnkey" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_TURNKEY |
| XT_TURNKEY: |
| .dw PFA_DODEFER |
| PFA_TURNKEY: |
| .dw $08 |
| .dw XT_EDEFERFETCH |
| .dw XT_EDEFERSTORE |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/type.html |
|---|
| 0,0 → 1,114 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/type.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/type.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr n -- ) Character IO |
| ; R( -- ) |
| ; emits a string |
| VE_TYPE: |
| .db $04, "type",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_TYPE |
| XT_TYPE: |
| .dw DO_COLON |
| PFA_TYPE: |
| .dw XT_QDUP |
| .dw XT_NOTEQUALZERO |
| .dw XT_DOCONDBRANCH |
| .dw PFA_TYPE2 |
| .dw XT_ZERO |
| .dw XT_DODO |
| .dw PFA_TYPE2 |
| PFA_TYPE1: |
| .dw XT_DUP |
| .dw XT_I |
| .dw XT_PLUS |
| .dw XT_CFETCH |
| .dw XT_EMIT |
| .dw XT_DOLOOP |
| .dw PFA_TYPE1 |
| PFA_TYPE2: |
| .dw XT_DROP |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/udefer-fetch.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/udefer-fetch.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/udefer-fetch.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( xt1 -- xt2 ) System |
| ; R( -- ) |
| ; does the real defer@ for user based defers |
| ;VE_UDEFERFETCH: |
| ; .db $07, "Udefer@" |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_UDEFERFETCH |
| XT_UDEFERFETCH: |
| .dw DO_COLON |
| PFA_UDEFERFETCH: |
| .dw XT_1PLUS ; >body |
| .dw XT_IFETCH |
| .dw XT_UP_FETCH |
| .dw XT_PLUS |
| .dw XT_FETCH |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/udefer-store.html |
|---|
| 0,0 → 1,103 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/udefer-store.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/udefer-store.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( xt1 xt2 -- ) Memory |
| ; R( -- ) |
| ; does the real defer! for user based defers |
| ;VE_UDEFERSTORE: |
| ; .db $07, "Udefer!" |
| ; .dw VE_HEAD |
| ; .set VE_HEAD = VE_UDEFERSTORE |
| XT_UDEFERSTORE: |
| .dw DO_COLON |
| PFA_UDEFERSTORE: |
| .dw XT_1PLUS |
| .dw XT_IFETCH |
| .dw XT_UP_FETCH |
| .dw XT_PLUS |
| .dw XT_STORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/udot.html |
|---|
| 0,0 → 1,105 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/udot.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/udot.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n -- ) Numeric IO |
| ; R( -- ) |
| ; unsigned numeric output |
| VE_UDOT: |
| .db $02, "u.",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_UDOT |
| XT_UDOT: |
| .dw DO_COLON |
| PFA_UDOT: |
| .dw XT_ZERO |
| .dw XT_SWAP |
| .dw XT_L_SHARP |
| .dw XT_SHARP_S |
| .dw XT_BL |
| .dw XT_HOLD |
| .dw XT_SHARP_G |
| .dw XT_TYPE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/ugreater.html |
|---|
| 0,0 → 1,107 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/ugreater.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/ugreater.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( u1 u2 -- flag ) Compare |
| ; R( -- ) |
| ; compares u1 > u2 (unsigned) |
| VE_UGREATER: |
| .db $02, "u>",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_UGREATER |
| XT_UGREATER: |
| .dw PFA_UGREATER |
| PFA_UGREATER: |
| ld temp2, Y+ |
| ld temp3, Y+ |
| cp temp2, tosl |
| cpc temp3, tosh |
| movw zl, zerol |
| brlo PFA_UGREATER1 |
| brbs 1, PFA_UGREATER1 |
| sbiw zl, 1 |
| PFA_UGREATER1: |
| movw tosl, zl |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/uless.html |
|---|
| 0,0 → 1,107 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/uless.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/uless.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( u1 u2 -- flasg) Compare |
| ; R( -- ) |
| ; compare values u1 < u2 (unsigned) |
| VE_ULESS: |
| .db $02, "u<",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_ULESS |
| XT_ULESS: |
| .dw PFA_ULESS |
| PFA_ULESS: |
| ld temp2, Y+ |
| ld temp3, Y+ |
| cp tosl, temp2 |
| cpc tosh, temp3 |
| movw zl, zerol |
| brlo PFA_ULESS1 |
| brbs 1, PFA_ULESS1 |
| sbiw zl, 1 |
| PFA_ULESS1: |
| movw tosl, zl |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/umslashmod.html |
|---|
| 0,0 → 1,146 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/umslashmod.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/umslashmod.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( ud u2 -- rem quot) Arithmetics |
| ; R( -- ) |
| ; unsigned division ud / u2 with remainder |
| VE_UMSLASHMOD: |
| .db $06, "um/mod",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_UMSLASHMOD |
| XT_UMSLASHMOD: |
| .dw PFA_UMSLASHMOD |
| PFA_UMSLASHMOD: |
| movw temp4, tosl |
| ld temp0, Y+ |
| ld temp1, Y+ |
| ld temp2, Y+ |
| ld temp3, Y+ |
| ;; unsigned 32/16 -> 16r16 divide |
| PFA_UMSLASHMODmod: |
| ; set loop counter |
| ldi temp6,$10 |
| PFA_UMSLASHMODmod_loop: |
| ; shift left, saving high bit |
| clr temp7 |
| lsl temp0 |
| rol temp1 |
| rol temp2 |
| rol temp3 |
| rol temp7 |
| ; try subtracting divisor |
| cp temp2, temp4 |
| cpc temp3, temp5 |
| cpc temp7,zerol |
| brcs PFA_UMSLASHMODmod_loop_control |
| PFA_UMSLASHMODmod_subtract: |
| ; dividend is large enough |
| ; do the subtraction for real |
| ; and set lowest bit |
| inc temp0 |
| sub temp2, temp4 |
| sbc temp3, temp5 |
| PFA_UMSLASHMODmod_loop_control: |
| dec temp6 |
| brne PFA_UMSLASHMODmod_loop |
| PFA_UMSLASHMODmod_done: |
| ; put remainder on stack |
| st -Y,temp3 |
| st -Y,temp2 |
| ; put quotient on stack |
| movw tosl, temp0 |
| jmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/unloop.html |
|---|
| 0,0 → 1,103 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/unloop.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/unloop.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Control Structure |
| ; R(loop-sys -- ) |
| ; remove loop-sys |
| VE_UNLOOP: |
| .db 6, "unloop", 0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_UNLOOP |
| XT_UNLOOP: |
| .dw PFA_UNLOOP |
| PFA_UNLOOP: |
| pop temp1 |
| pop temp0 |
| pop temp1 |
| pop temp0 |
| pop temp1 |
| pop temp0 |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/until.html |
|---|
| 0,0 → 1,100 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/until.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/until.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( addr -- ) Compiler |
| ; R( -- ) |
| ; finish begin with conditional branch |
| VE_UNTIL: |
| .db $85, "until" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_UNTIL |
| XT_UNTIL: |
| .dw DO_COLON |
| PFA_UNTIL: |
| .dw XT_COMPILE |
| .dw XT_DOCONDBRANCH |
| .dw XT_LRESOLVE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/unused.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/unused.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/unused.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- n ) Tools |
| ; R( -- ) |
| ; number of unused flash cells |
| VE_UNUSED: |
| .db $6, "unused",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_UNUSED |
| XT_UNUSED: |
| .dw DO_COLON |
| PFA_UNUSED: |
| .dw XT_DOLITERAL |
| .dw nrww |
| .dw XT_HERE |
| .dw XT_MINUS |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/up.html |
|---|
| 0,0 → 1,113 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/up.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/up.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- addr ) System |
| ; R( -- ) |
| ; get user pointer |
| VE_UP_FETCH: |
| .db $03, "up@" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_UP_FETCH |
| XT_UP_FETCH: |
| .dw PFA_UP_FETCH |
| PFA_UP_FETCH: |
| savetos |
| movw tosl, upl |
| rjmp DO_NEXT |
| ; ( addr -- ) System |
| ; R( -- ) |
| ; set user pointer |
| VE_UP_STORE: |
| .db $03, "up!" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_UP_STORE |
| XT_UP_STORE: |
| .dw PFA_UP_STORE |
| PFA_UP_STORE: |
| movw upl, tosl |
| loadtos |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/usart.html |
|---|
| 0,0 → 1,379 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/usart.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/usart.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ;;; usart driver |
| ;; bit definitions |
| .set pc_ = pc |
| .org URXCaddr |
| rjmp usart0_rx_isr |
| .org UDREaddr |
| rjmp usart0_udre_isr |
| .org pc_ |
| ; sizes have to be powers of 2! |
| .equ usart0_tx_size = $10 |
| .equ usart0_rx_size = $10 |
| .equ usart0_tx_mask = usart0_tx_size - 1 |
| .equ usart0_rx_mask = usart0_rx_size - 1 |
| .set usart0_tx_in = heap |
| .set heap = heap + 1 |
| .set usart0_tx_out = heap |
| .set heap = heap + 1 |
| .set usart0_tx_data = heap |
| .set heap = heap + usart0_tx_size |
| .set usart0_rx_in = heap |
| .set heap = heap + 1 |
| .set usart0_rx_out = heap |
| .set heap = heap + 1 |
| .set usart0_rx_data = heap |
| .set heap = heap + usart0_rx_size |
| ; ( -- v) System Value |
| ; R( -- ) |
| ; returns usart0 baudrate |
| VE_BAUD0: |
| .db 05,"baud0" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_BAUD0 |
| XT_BAUD0: |
| .dw PFA_DOVALUE |
| PFA_BAUD00: ; ( -- ) |
| .dw 10 |
| ; ( -- ) Hardware Access |
| ; R( --) |
| ; initialize usart0 |
| VE_USART0: |
| .db $06, "usart0",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_USART0 |
| XT_USART0: |
| .dw DO_COLON |
| PFA_USART0: ; ( -- ) |
| .dw XT_ZERO |
| .dw XT_DOLITERAL |
| .dw usart0_tx_in |
| .dw XT_CSTORE |
| .dw XT_ZERO |
| .dw XT_DOLITERAL |
| .dw usart0_tx_out |
| .dw XT_CSTORE |
| .dw XT_ZERO |
| .dw XT_DOLITERAL |
| .dw usart0_rx_in |
| .dw XT_CSTORE |
| .dw XT_ZERO |
| .dw XT_DOLITERAL |
| .dw usart0_rx_out |
| .dw XT_CSTORE |
| .dw XT_F_CPU |
| .dw XT_D2SLASH |
| .dw XT_D2SLASH |
| .dw XT_D2SLASH |
| .dw XT_D2SLASH |
| .dw XT_ROT |
| .dw XT_UMSLASHMOD |
| .dw XT_SWAP |
| .dw XT_DROP |
| .dw XT_1MINUS |
| .dw XT_DUP |
| .dw XT_DOLITERAL |
| .dw BAUDRATE0_LOW |
| .dw XT_CSTORE |
| .dw XT_BYTESWAP |
| .dw XT_DOLITERAL |
| .dw BAUDRATE0_HIGH |
| .dw XT_CSTORE |
| .dw XT_DOLITERAL |
| .dw (1<<UMSEL01)|(3<<UCSZ00) |
| .dw XT_DOLITERAL |
| .dw USART0_C |
| .dw XT_CSTORE |
| .dw XT_DOLITERAL |
| .dw (1<<TXEN0) | (1<<RXEN0) | (1<<RXCIE0) |
| .dw XT_DOLITERAL |
| .dw USART0_B |
| .dw XT_CSTORE |
| .dw XT_EXIT |
| usart0_udre_isr: |
| push xl |
| in xl,SREG |
| push xl |
| push xh |
| push zl |
| push zh |
| lds xl,usart0_tx_in |
| lds xh,usart0_tx_out |
| cp xh,xl |
| brne usart0_udre_next |
| usart0_udre_last: |
| lds xl, USART0_B |
| cbr xl,(1<<UDRIE0) |
| sts USART0_B,xl |
| rjmp usart0_udre_done |
| usart0_udre_next: |
| inc xh |
| andi xh,usart0_tx_mask |
| sts usart0_tx_out,xh |
| ldi zl,low(usart0_tx_data) |
| ldi zh,high(usart0_tx_data) |
| add zl,xh |
| adc zh,zeroh |
| ld xl,z |
| out_ UDR0,xl |
| usart0_udre_done: |
| pop zh |
| pop zl |
| pop xh |
| pop xl |
| out SREG,xl |
| pop xl |
| reti |
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
| usart0_rx_isr: |
| push xl |
| in xl, SREG |
| push xl |
| push xh |
| push zl |
| push zh |
| lds xl,usart0_rx_in |
| inc xl |
| andi xl,usart0_rx_mask |
| ldi zl, low(usart0_rx_data) |
| ldi zh, high(usart0_rx_data) |
| add zl, xl |
| adc zh, zeroh |
| in_ xh, UDR0 |
| st Z, xh |
| sts usart0_rx_in, xl |
| pop zh |
| pop zl |
| pop xh |
| pop xl |
| out SREG, xl |
| pop xl |
| reti |
| ; (c -- ) Hardware Access |
| ; R( --) |
| ; put 1 character into output queue, wait if needed, enable UDRIE0 interrupt |
| VE_TX0: |
| .db $03, "tx0" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_TX0 |
| XT_TX0: |
| .dw DO_COLON |
| PFA_TX0: |
| ; wait for queue |
| .dw XT_TX0Q |
| .dw XT_DOCONDBRANCH |
| .dw PFA_TX0 |
| ; append to queue |
| .dw XT_DOLITERAL |
| .dw usart0_tx_in |
| .dw XT_CFETCH ; ( -- c tx_in) |
| .dw XT_1PLUS |
| .dw XT_DOLITERAL |
| .dw usart0_tx_mask |
| .dw XT_AND ; ( -- c tx_in_new) |
| .dw XT_DUP |
| .dw XT_DOLITERAL |
| .dw usart0_tx_in |
| .dw XT_CSTORE |
| .dw XT_DOLITERAL |
| .dw usart0_tx_data ; ( -- c tx_in_new data) |
| .dw XT_PLUS |
| .dw XT_CSTORE |
| ; enable interrupt |
| .dw XT_DOLITERAL |
| .dw USART0_B |
| .dw XT_DUP ; |
| .dw XT_CFETCH |
| .dw XT_DOLITERAL |
| .dw 1<<UDRIE0 |
| .dw XT_OR |
| .dw XT_SWAP |
| .dw XT_CSTORE |
| .dw XT_EXIT |
| ; ( -- f) Hardware Access |
| ; R( --) |
| ; check if a character can be appended to output queue. |
| VE_TX0Q: |
| .db $04, "tx0?",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_TX0Q |
| XT_TX0Q: |
| .dw DO_COLON |
| PFA_TX0Q: |
| .dw XT_PAUSE |
| .dw XT_DOLITERAL |
| .dw usart0_tx_out |
| .dw XT_CFETCH |
| .dw XT_DOLITERAL |
| .dw usart0_tx_in |
| .dw XT_CFETCH |
| .dw XT_EQUAL |
| .dw XT_EXIT |
| ; ( -- c) Hardware Access |
| ; R( --) |
| ; get 1 character from input queue, wait if needed |
| VE_RX0: |
| .db $03, "rx0" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_RX0 |
| XT_RX0: |
| .dw DO_COLON |
| PFA_RX0: |
| .dw XT_RX0Q |
| .dw XT_DOCONDBRANCH |
| .dw PFA_RX0 |
| .dw XT_DOLITERAL |
| .dw usart0_rx_out |
| .dw XT_CFETCH |
| .dw XT_1PLUS |
| .dw XT_DOLITERAL |
| .dw usart0_rx_mask |
| .dw XT_AND |
| .dw XT_DUP |
| .dw XT_DOLITERAL |
| .dw usart0_rx_out |
| .dw XT_CSTORE |
| .dw XT_DOLITERAL |
| .dw usart0_rx_data |
| .dw XT_PLUS |
| .dw XT_CFETCH |
| .dw XT_EXIT |
| ; ( -- f) Hardware Access |
| ; R( --) |
| ; check if unread characters are in the input queue. |
| VE_RX0Q: |
| .db $04, "rx0?",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_RX0Q |
| XT_RX0Q: |
| .dw DO_COLON |
| PFA_RX0Q: |
| .dw XT_PAUSE |
| .dw XT_DOLITERAL |
| .dw usart0_rx_out |
| .dw XT_CFETCH |
| .dw XT_DOLITERAL |
| .dw usart0_rx_in |
| .dw XT_CFETCH |
| .dw XT_NOTEQUAL |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/user.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/user.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/user.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n -- ) Compiler |
| ; R( -- ) |
| ; define a new user variable |
| VE_USER: |
| .db $04, "user",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_USER |
| XT_USER: |
| .dw DO_COLON |
| PFA_USER: |
| .dw XT_DOCREATE |
| .dw XT_COMPILE |
| .dw PFA_DOUSER |
| .dw XT_COMMA |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/uslashmod.html |
|---|
| 0,0 → 1,102 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/uslashmod.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/uslashmod.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; (u1 u2 -- rem quot) Arithmetics |
| ; R( -- ) |
| ; unsigned division with remainder |
| VE_USLASHMOD: |
| .db $05, "u/mod" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_USLASHMOD |
| XT_USLASHMOD: |
| .dw DO_COLON |
| PFA_USLASHMOD: |
| .dw XT_TO_R |
| .dw XT_ZERO |
| .dw XT_SWAP |
| .dw XT_R_FROM |
| .dw XT_UMSLASHMOD |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/ustarslashmod.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/ustarslashmod.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/ustarslashmod.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( u1 u2 u3 -- rem quot) Arithmetics |
| ; R( -- ) |
| ; unsigned division with remainder u3 * u2 / u1 |
| VE_USTARSLASHMOD: |
| .db $06, "u*/mod",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_USTARSLASHMOD |
| XT_USTARSLASHMOD: |
| .dw DO_COLON |
| PFA_USTARSLASHMOD: |
| .dw XT_TO_R |
| .dw XT_MSTAR |
| .dw XT_R_FROM |
| .dw XT_UMSLASHMOD |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/value.html |
|---|
| 0,0 → 1,120 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/value.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/value.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n <name> -- ) Compiler |
| ; R( -- ) |
| ; allocate space for 1 cell in EEPROM. used in conjunction with TO |
| VE_VALUE: |
| .db $05, "value" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_VALUE |
| XT_VALUE: |
| .dw DO_COLON |
| PFA_VALUE: |
| .dw XT_DOCREATE |
| .dw XT_COMPILE |
| .dw PFA_DOVALUE |
| .dw XT_EDP |
| .dw XT_EFETCH |
| .dw XT_DUP |
| .dw XT_COMMA |
| .dw XT_DUP |
| .dw XT_1PLUS |
| .dw XT_1PLUS |
| .dw XT_EDP |
| .dw XT_ESTORE |
| .dw XT_ESTORE |
| .dw XT_EXIT |
| PFA_DOVALUE: |
| call_ DO_DODOES |
| .dw XT_IFETCH |
| .dw XT_EFETCH |
| .dw XT_EXIT |
| ; : value ( n -- ) |
| ; create edp e@ dup , dup 1+ 1+ edp e! e! does> i@ e@ ; |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/variable.html |
|---|
| 0,0 → 1,106 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/variable.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/variable.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Compiler |
| ; R( -- ) |
| ; create a variable entry and allocate RAM space for it |
| VE_VARIABLE: |
| .db $08, "variable",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_VARIABLE |
| XT_VARIABLE: |
| .dw DO_COLON |
| PFA_VARIABLE: |
| .dw XT_DOCREATE |
| .dw XT_COMPILE |
| .dw PFA_DOVARIABLE |
| .dw XT_HEAP |
| .dw XT_EFETCH |
| .dw XT_COMMA |
| .dw XT_DOLITERAL |
| .dw 2 |
| .dw XT_ALLOT |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/ver.html |
|---|
| 0,0 → 1,105 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/ver.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/ver.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Tools |
| ; R( -- ) |
| ; emits the version string |
| VE_VER: |
| .db $03, "ver" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_VER |
| XT_VER: |
| .dw DO_COLON |
| PFA_VER: |
| .dw XT_SLITERAL |
| .db 11,"amforth 2.2" |
| .dw XT_ITYPE |
| .dw XT_SPACE |
| .dw XT_DOLITERAL |
| .dw mcustring |
| .dw XT_ICOUNT |
| .dw XT_ITYPE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/wdr.html |
|---|
| 0,0 → 1,98 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/wdr.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/wdr.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Interrupt |
| ; R( -- ) |
| ; calls the MCU wdr instruction |
| VE_WDR: |
| .db $03, "wdr" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_WDR |
| XT_WDR: |
| .dw PFA_WDR |
| PFA_WDR: |
| wdr |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/while.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/while.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/while.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( dest -- orig dest ) Control Structure |
| ; R( -- ) |
| ; control structure |
| VE_WHILE: |
| .db $85, "while" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_WHILE |
| XT_WHILE: |
| .dw DO_COLON |
| PFA_WHILE: |
| .dw XT_COMPILE |
| .dw XT_DOCONDBRANCH |
| .dw XT_GMARK |
| .dw XT_SWAP |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/word.html |
|---|
| 0,0 → 1,135 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/word.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/word.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( c -- addr ) Tools |
| ; R( -- ) |
| ; skip leading delimiter characters and parses TIB to the next delimiter. copy the word into PAD |
| VE_WORD: |
| .db $04, "word",0 |
| .dw VE_HEAD |
| .set VE_HEAD = VE_WORD |
| XT_WORD: |
| .dw DO_COLON |
| PFA_WORD: |
| .dw XT_TO_R ; ( -- ) |
| .dw XT_SOURCE ; ( -- addr len) |
| .dw XT_G_IN ; ( -- addr len >in) |
| .dw XT_FETCH |
| .dw XT_SLASHSTRING ; ( -- addr' len' ) |
| .dw XT_SWAP ; ( -- len' addr' ) |
| .dw XT_OVER ; ( -- len' addr' len') |
| .dw XT_R_FETCH ; ( -- len' addr' len' c) |
| .dw XT_CSKIP ; ( -- len' addr'' len'') |
| .dw XT_ROT ; ( -- addr'' len'' len') |
| .dw XT_OVER ; ( -- addr'' len'' len' len'') |
| .dw XT_MINUS ; ( -- addr'' len'' dlen) |
| .dw XT_G_IN ; ( -- addr'' len'' dlen >in) |
| .dw XT_PLUSSTORE ; ( -- addr'' len'') |
| .dw XT_R_FROM ; ( -- addr'' len'' c) |
| .dw XT_CSCAN ; ( -- addr''' len''') |
| .dw XT_DUP ; ( -- addr''' len''' len''') |
| .dw XT_1PLUS ; |
| .dw XT_G_IN |
| .dw XT_PLUSSTORE ; ( -- addr''' len''') |
| .dw XT_PAD ; ( -- addr''' len''' pad) |
| .dw XT_OVER ; ( -- addr''' len''' pad len''') |
| .dw XT_OVER ; ( -- addr''' len''' pad len''' pad) |
| .dw XT_CSTORE ; ( -- addr''' len''' pad) |
| .dw XT_1PLUS ; ( -- addr''' len''' pad+1) |
| .dw XT_SWAP ; ( -- addr''' pad+1 len''') |
| .dw XT_CMOVE_G ; ( --- ) |
| .dw XT_PAD |
| .dw XT_ZERO ; append a zero byte. find/icompare _does_ need it |
| .dw XT_PAD |
| .dw XT_DUP |
| .dw XT_CFETCH |
| .dw XT_PLUS ; ( -- pad pad+len ) |
| .dw XT_1PLUS |
| .dw XT_CSTORE |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/words.html |
|---|
| 0,0 → 1,125 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/words.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/words.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- ) Tools |
| ; R( -- ) |
| ; emits a list of all (visible) words in the dictionary |
| VE_WORDS: |
| .db $05, "words" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_WORDS |
| XT_WORDS: |
| .dw DO_COLON |
| PFA_WORDS: |
| .dw XT_HEAD |
| .dw XT_EFETCH |
| PFA_WORDS1: |
| .dw XT_DUP ; ( -- addr addr ) |
| .dw XT_NOTEQUALZERO ; ( -- addr f ) |
| .dw XT_DOCONDBRANCH ; ( -- addr ) is nfa = counted string |
| .dw PFA_WORDS2 ; |
| .dw XT_ICOUNT ; ( -- adr n ) |
| .dw XT_DOLITERAL |
| .dw $1F |
| .dw XT_AND ; mask immediate bit |
| .dw XT_OVER |
| .dw XT_OVER |
| .dw XT_ITYPE ; ( -- adr n ) |
| .dw XT_2SLASH ; ( -- adr k ) |
| .dw XT_1PLUS ; ( -- adr k+1 ) |
| .dw XT_PLUS ; ( -- adrk+1 ) |
| .dw XT_SPACE ; emit space |
| .dw XT_IFETCH ; ( -- addr ) |
| .dw XT_DOBRANCH ; ( -- addr ) |
| .dw PFA_WORDS1 ; ( -- addr ) |
| PFA_WORDS2: |
| .dw XT_DROP ; ( addr -- ) |
| .dw XT_EXIT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/xor.html |
|---|
| 0,0 → 1,101 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/xor.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/xor.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( n1 n2 -- n3) Logic |
| ; R( -- ) |
| ; exclusive or |
| VE_XOR: |
| .db $03, "xor" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_XOR |
| XT_XOR: |
| .dw PFA_XOR |
| PFA_XOR: |
| ld temp0, Y+ |
| ld temp1, Y+ |
| eor tosl, temp0 |
| eor tosh, temp1 |
| rjmp DO_NEXT |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/CodeAsm/zero.html |
|---|
| 0,0 → 1,97 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> words/zero.asm </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <h1> words/zero.asm </h1> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| <pre> |
| ; ( -- 0 ) Arithmetics |
| ; R( -- ) |
| ; leaves the value 0 on TOS |
| VE_ZERO: |
| .db $01, "0" |
| .dw VE_HEAD |
| .set VE_HEAD = VE_ZERO |
| XT_ZERO: |
| .dw PFA_DOVARIABLE |
| PFA_ZERO: |
| .dw 0 |
| </pre> |
| <p> |
| <input type=button onClick="history.back()" value="Back"> |
| <input type=button onClick="history.forward()" value="Forward"> |
| <a href="../WordList.en.html">Jump to Vocabulary</a> |
| </p> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/WordList.cs.html |
|---|
| 0,0 → 1,1251 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> Forth amforth </title> |
| <meta name="keywords" content="amforth programovací jazyk Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - jazyk Forth pro ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.cs.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../Web/CSS/MLAB.css" type="text/css" title="MLAB základní styl"> |
| <link rel="StyleSheet" href="../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="cs"> |
| <!-- AUTOINCLUDE START "Page/Header.cs.ihtml" DO NOT REMOVE --> |
| <!-- ============== HLAVICKA ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> Pro zobrazení (vložení) hlavičky je potřeba JavaScript </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.cs.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> Pro zobrazení (vložení) menu je potřeba JavaScript </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <p class="Title"> |
| amforth - Forth pro ATmega |
| </p> |
| <p class="Subtitle"> |
| Tato stránka zpřístupňuje křížovou referenci jazyka amforth. Odkazy se |
| generují automaticky na základě zdrojových souborů jazyka amforth. |
| </p> |
| <h1> Verze </h1> |
| <table class="Compact"> |
| <tr> |
| <th colspan="2" class="center"> Základní informace </th> |
| </tr> |
| <tr> |
| <td> Stránka jazyka amforth </td> |
| <td> <a href="http://amforth.sourceforge.net/">http://amforth.sourceforge.net/</a></td> |
| </tr> |
| <tr> |
| <td> Stránka pro download </td> |
| <td> <a href="http://sourceforge.net/projects/amforth">http://sourceforge.net/projects/amforth</a></td> |
| </tr> |
| <tr> |
| <td> Subversion server </td> |
| <td> <a href="https://amforth.svn.sourceforge.net/svnroot/amforth">https://amforth.svn.sourceforge.net/svnroot/amforth</a></td> |
| </tr> |
| <tr><th colspan="2">Subversion Info</th></tr><tr><td>URL</td><td> https://amforth.svn.sourceforge.net/svnroot/amforth/trunk</td></tr> |
| <tr><td>Repository Root</td><td> https://amforth.svn.sourceforge.net/svnroot/amforth</td></tr> |
| <tr><td>Repository UUID</td><td> 1be2a6a9-e81f-0410-9be0-e59bd151596a</td></tr> |
| <tr><td>Last Changed Author</td><td> mtrute</td></tr> |
| <tr><td>Last Changed Rev</td><td> 328</td></tr> |
| <tr><td>Last Changed Date</td><td> 2007-06-11 08:42:09 +0200 (Mon, 11 Jun 2007)</td></tr> |
| </table> |
| <!-- |
| <<ReadMe>> |
| --> |
| <h1> Seznam slov </h1> |
| <table> |
| <tr> |
| <th>Word</th> |
| <th>Label</th> |
| <th>Definition</th> |
| </tr> |
| <tr> |
| <td>!</td> |
| <td><a href="CodeAsm/store.html#STORE" title="VE_STORE">STORE</a></td> |
| <td>( n addr -- ) Memory<br>R( -- )<br>write 16bit to RAM memory (or IO or CPU registers)</td> |
| </tr> |
| <tr> |
| <td>#</td> |
| <td><a href="CodeAsm/sharp.html#SHARP" title="VE_SHARP">SHARP</a></td> |
| <td>( d1 -- d2) Numeric IO<br>R( -- )<br>compiles next digit to HLD</td> |
| </tr> |
| <tr> |
| <td>#></td> |
| <td><a href="CodeAsm/sharp_g.html#SHARP_G" title="VE_SHARP_G">SHARP_G</a></td> |
| <td>( d1 -- addr count ) Numeric IO<br>R( -- )<br>convert HLD buffer to a usable string</td> |
| </tr> |
| <tr> |
| <td>#int</td> |
| <td><a href="CodeAsm/intx.html#NUMINT" title="VE_NUMINT">NUMINT</a></td> |
| <td>( -- n ) Interrupt<br>R( -- )<br>number of interrupt vectors (0 based)</td> |
| </tr> |
| <tr> |
| <td>#s</td> |
| <td><a href="CodeAsm/sharp_s.html#SHARP_S" title="VE_SHARP_S">SHARP_S</a></td> |
| <td>( d1 -- 0) Numeric IO<br>R( -- )<br>call # until a value of zero is reached</td> |
| </tr> |
| <tr> |
| <td>#tib</td> |
| <td><a href="CodeAsm/sharptib.html#NUMBERTIB" title="VE_NUMBERTIB">NUMBERTIB</a></td> |
| <td>( -- addr ) System<br>R( -- )<br>address of variable holding the number of characters in TIB</td> |
| </tr> |
| <tr> |
| <td>'</td> |
| <td><a href="CodeAsm/tick.html#TICK" title="VE_TICK">TICK</a></td> |
| <td>( -- XT ) Dictionary<br>R( -- )<br>search dictionary, returns XT or throw an exception -13</td> |
| </tr> |
| <tr> |
| <td>(</td> |
| <td><a href="CodeAsm/lparenthesis.html#LPARENTHESIS" title="VE_LPARENTHESIS">LPARENTHESIS</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>skip everything up to the closing bracket on the same line</td> |
| </tr> |
| <tr> |
| <td>*</td> |
| <td><a href="CodeAsm/star.html#MUL" title="VE_MUL">MUL</a></td> |
| <td>( n1 n2 -- n3 ) Arithmetics<br>R( -- )<br>multiply routine</td> |
| </tr> |
| <tr> |
| <td>*/</td> |
| <td><a href="CodeAsm/starslash.html#STARSLASH" title="VE_STARSLASH">STARSLASH</a></td> |
| <td>(n1 n2 n3 -- n4) Arithmetics<br>R( -- )<br>signed multiply and division with double precision intermediate</td> |
| </tr> |
| <tr> |
| <td>*/mod</td> |
| <td><a href="CodeAsm/starslashmod.html#STARSLASHMOD" title="VE_STARSLASHMOD">STARSLASHMOD</a></td> |
| <td>( n1 n2 n3 -- rem quot) Arithmetics<br>R( -- )<br>signed multiply and division with double precision intermediate and remainder</td> |
| </tr> |
| <tr> |
| <td>+</td> |
| <td><a href="CodeAsm/plus.html#PLUS" title="VE_PLUS">PLUS</a></td> |
| <td>( n1 n2 -- n3) Arithmetics<br>R( -- )<br>addition</td> |
| </tr> |
| <tr> |
| <td>+!</td> |
| <td><a href="CodeAsm/plusstore.html#PLUSSTORE" title="VE_PLUSSTORE">PLUSSTORE</a></td> |
| <td>( n addr -- ) Arithmetics<br>R( -- )<br>add value to content of RAM address</td> |
| </tr> |
| <tr> |
| <td>+loop</td> |
| <td><a href="CodeAsm/plusloop.html#PLOOP" title="VE_PLOOP">PLOOP</a></td> |
| <td>( addr -- ) Control Structure<br>R( -- )<br>compile +loop and resolve branch</td> |
| </tr> |
| <tr> |
| <td>,</td> |
| <td><a href="CodeAsm/comma.html#COMMA" title="VE_COMMA">COMMA</a></td> |
| <td>( n -- ) Dictionary<br>R( -- )<br>compile 16 bit into flash at here.</td> |
| </tr> |
| <tr> |
| <td>-</td> |
| <td><a href="CodeAsm/minus.html#MINUS" title="VE_MINUS">MINUS</a></td> |
| <td>( n1 n2 -- n3 ) Arithmetics<br>R( -- )<br>subtract</td> |
| </tr> |
| <tr> |
| <td>.</td> |
| <td><a href="CodeAsm/dot.html#DOT" title="VE_DOT">DOT</a></td> |
| <td>( n -- ) Numeric IO<br>R( -- )<br>prints TOS in free number format</td> |
| </tr> |
| <tr> |
| <td>."</td> |
| <td><a href="CodeAsm/dotstring.html#DOTSTRING" title="VE_DOTSTRING">DOTSTRING</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>compiles string into dictionary to be typed at runtime</td> |
| </tr> |
| <tr> |
| <td>."</td> |
| <td><a href="CodeAsm/dotstring.html#DOTSTRING" title="VE_DOTSTRING">DOTSTRING</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>compiles string into dictionary to be typed at runtime</td> |
| </tr> |
| <tr> |
| <td>.s</td> |
| <td><a href="CodeAsm/dot-s.html#DOTS" title="VE_DOTS">DOTS</a></td> |
| <td>( -- ) Tools<br>R( -- )<br>stack dump</td> |
| </tr> |
| <tr> |
| <td>.s</td> |
| <td><a href="CodeAsm/dot-s.html#DOTS" title="VE_DOTS">DOTS</a></td> |
| <td>( -- ) Tools<br>R( -- )<br>stack dump</td> |
| </tr> |
| <tr> |
| <td>/</td> |
| <td><a href="CodeAsm/slash.html#SLASH" title="VE_SLASH">SLASH</a></td> |
| <td>( n1 n2 -- n3) Arithmetics<br>R( -- )<br>diviion</td> |
| </tr> |
| <tr> |
| <td>/int</td> |
| <td><a href="CodeAsm/intx.html#INTOFF" title="VE_INTOFF">INTOFF</a></td> |
| <td>( -- sreg ) Interrupt<br>R( -- )<br>turns off all interrupts and leaves SREG in TOS</td> |
| </tr> |
| <tr> |
| <td>/key</td> |
| <td><a href="CodeAsm/slashkey.html#SLASHKEY" title="VE_SLASHKEY">SLASHKEY</a></td> |
| <td>( -- f) Character IO<br>R( -- )<br>fetch 'key? vector and execute it if not zero. Leave true if a character can be read, false otherwise</td> |
| </tr> |
| <tr> |
| <td>/mod</td> |
| <td><a href="CodeAsm/slashmod.html#SLASHMOD" title="VE_SLASHMOD">SLASHMOD</a></td> |
| <td>( n1 n2 -- rem quot) Arithmetics<br>R( -- )<br>signed division n1/n2 with remainder</td> |
| </tr> |
| <tr> |
| <td>/string</td> |
| <td><a href="CodeAsm/slashstring.html#SLASHSTRING" title="VE_SLASHSTRING">SLASHSTRING</a></td> |
| <td>( addr1 u1 n-- addr2 u2 ) String<br>R( -- )<br>adjust string from addr1 to addr1+n, reduce length from u1 to u2</td> |
| </tr> |
| <tr> |
| <td>0</td> |
| <td><a href="CodeAsm/zero.html#ZERO" title="VE_ZERO">ZERO</a></td> |
| <td>( -- 0 ) Arithmetics<br>R( -- )<br>leaves the value 0 on TOS</td> |
| </tr> |
| <tr> |
| <td>0<</td> |
| <td><a href="CodeAsm/lesszero.html#LESSZERO" title="VE_LESSZERO">LESSZERO</a></td> |
| <td>( n1 -- flag) Compare<br>R( -- )<br>compare with zero</td> |
| </tr> |
| <tr> |
| <td>0<></td> |
| <td><a href="CodeAsm/notequalzero.html#NOTEQUALZERO" title="VE_NOTEQUALZERO">NOTEQUALZERO</a></td> |
| <td>( n -- flag ) Compare<br>R( -- )<br>compare with zero</td> |
| </tr> |
| <tr> |
| <td>0=</td> |
| <td><a href="CodeAsm/equalzero.html#EQUALZERO" title="VE_EQUALZERO">EQUALZERO</a></td> |
| <td>( n -- flag ) Compare<br>R( -- )<br>compare with 0 (zero)</td> |
| </tr> |
| <tr> |
| <td>0></td> |
| <td><a href="CodeAsm/greaterzero.html#GREATERZERO" title="VE_GREATERZERO">GREATERZERO</a></td> |
| <td>( n1 -- flag ) Compare<br>R( -- )<br>compare with zero</td> |
| </tr> |
| <tr> |
| <td>1+</td> |
| <td><a href="CodeAsm/1plus.html#1PLUS" title="VE_1PLUS">1PLUS</a></td> |
| <td>( n1 -- n2 ) Arithmetics<br>R( -- )<br>optimized increment</td> |
| </tr> |
| <tr> |
| <td>1-</td> |
| <td><a href="CodeAsm/1minus.html#1MINUS" title="VE_1MINUS">1MINUS</a></td> |
| <td>( n1 -- n2 ) Arithmetics<br>R( -- )<br>optimized decrement (CORE)</td> |
| </tr> |
| <tr> |
| <td>1ms</td> |
| <td><a href="CodeAsm/1ms.html#1MS" title="VE_1MS">1MS</a></td> |
| <td>( -- ) Time<br>R(--)<br>busy waits (almost) exactly 1 millisecond</td> |
| </tr> |
| <tr> |
| <td>2*</td> |
| <td><a href="CodeAsm/2star.html#2STAR" title="VE_2STAR">2STAR</a></td> |
| <td>( n1 -- n2 ) Arithmetics<br>R( -- )<br>arithmetic shift left</td> |
| </tr> |
| <tr> |
| <td>2/</td> |
| <td><a href="CodeAsm/2slash.html#2SLASH" title="VE_2SLASH">2SLASH</a></td> |
| <td>( n1 -- n2 ) Arithmetics<br>R( -- )<br>arithmetic shift right</td> |
| </tr> |
| <tr> |
| <td>:</td> |
| <td><a href="CodeAsm/colon.html#COLON" title="VE_COLON">COLON</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>create named entry in the dictionary</td> |
| </tr> |
| <tr> |
| <td>:noname</td> |
| <td><a href="CodeAsm/colon-noname.html#COLONNONAME" title="VE_COLONNONAME">COLONNONAME</a></td> |
| <td>( -- xt ) Compiler<br>R( -- )<br>create unnamed entry in the dictionary</td> |
| </tr> |
| <tr> |
| <td>;</td> |
| <td><a href="CodeAsm/semicolon.html#SEMICOLON" title="VE_SEMICOLON">SEMICOLON</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>finish colon defintion, compiles (exit) and returns to interpreter state</td> |
| </tr> |
| <tr> |
| <td><</td> |
| <td><a href="CodeAsm/less.html#LESS" title="VE_LESS">LESS</a></td> |
| <td>( n1 n2 -- flasg) Compare<br>R( -- )<br>compare two values</td> |
| </tr> |
| <tr> |
| <td><#</td> |
| <td><a href="CodeAsm/l_sharp.html#L_SHARP" title="VE_L_SHARP">L_SHARP</a></td> |
| <td>( -- ) Numeric IO<br>R( -- )<br>emties counted string at address from hld</td> |
| </tr> |
| <tr> |
| <td><></td> |
| <td><a href="CodeAsm/notequal.html#NOTEQUAL" title="VE_NOTEQUAL">NOTEQUAL</a></td> |
| <td>( n1 n2 -- flag) Compare<br>R( -- )<br>compare two values</td> |
| </tr> |
| <tr> |
| <td>=</td> |
| <td><a href="CodeAsm/equal.html#EQUAL" title="VE_EQUAL">EQUAL</a></td> |
| <td>( n1 n2 -- flag ) Compare<br>R( -- )<br>compares two values</td> |
| </tr> |
| <tr> |
| <td>></td> |
| <td><a href="CodeAsm/greater.html#GREATER" title="VE_GREATER">GREATER</a></td> |
| <td>( n1 n2 -- flag ) Compare<br>R( -- )<br>compares two values (signed)</td> |
| </tr> |
| <tr> |
| <td>><</td> |
| <td><a href="CodeAsm/byteswap.html#BYTESWAP" title="VE_BYTESWAP">BYTESWAP</a></td> |
| <td>( n1 -- n2 ) Arithmetics<br>R( -- )<br>swap the bytes of the TOS</td> |
| </tr> |
| <tr> |
| <td>>in</td> |
| <td><a href="CodeAsm/g_in.html#G_IN" title="VE_G_IN">G_IN</a></td> |
| <td>( -- addr ) System<br>R( -- )<br>pointer to current read position in TIB</td> |
| </tr> |
| <tr> |
| <td>>r</td> |
| <td><a href="CodeAsm/to_r.html#TO_R" title="VE_TO_R">TO_R</a></td> |
| <td>( n -- ) Stack<br>R( -- n)<br>move TOS to TOR</td> |
| </tr> |
| <tr> |
| <td>?do</td> |
| <td><a href="CodeAsm/qdo.html#QDO" title="VE_QDO">QDO</a></td> |
| <td>( -- addr ) Control Structure<br>R( -- )<br>start do .. [+]loop</td> |
| </tr> |
| <tr> |
| <td>?do</td> |
| <td><a href="CodeAsm/qdo.html#QDO" title="VE_QDO">QDO</a></td> |
| <td>( -- addr ) Control Structure<br>R( -- )<br>start do .. [+]loop</td> |
| </tr> |
| <tr> |
| <td>?dup</td> |
| <td><a href="CodeAsm/qdup.html#QDUP" title="VE_QDUP">QDUP</a></td> |
| <td>( n1 -- [ n1 n1 ] | 0) Stack<br>R( -- )<br>duplicate TOS if non-zero</td> |
| </tr> |
| <tr> |
| <td>@</td> |
| <td><a href="CodeAsm/fetch.html#FETCH" title="VE_FETCH">FETCH</a></td> |
| <td>( addr -- n ) Memory<br>R( -- )<br>read 1 cell from RAM (or IO or CPU register)</td> |
| </tr> |
| <tr> |
| <td>Edefer</td> |
| <td><a href="CodeAsm/edefer.html#EDEFER" title="VE_EDEFER">EDEFER</a></td> |
| <td>( n <name> -- ) Compiler<br>R( -- )<br>creates a defer vector which is kept in eeprom.</td> |
| </tr> |
| <tr> |
| <td>Edefer</td> |
| <td><a href="CodeAsm/edefer.html#EDEFER" title="VE_EDEFER">EDEFER</a></td> |
| <td>( n <name> -- ) Compiler<br>R( -- )<br>creates a defer vector which is kept in eeprom.</td> |
| </tr> |
| <tr> |
| <td>Rdefer</td> |
| <td><a href="CodeAsm/rdefer.html#RDEFER" title="VE_RDEFER">RDEFER</a></td> |
| <td>( n <name> -- ) Compiler<br>R( -- )<br>creates a RAM based defer vector</td> |
| </tr> |
| <tr> |
| <td>Rdefer</td> |
| <td><a href="CodeAsm/rdefer.html#RDEFER" title="VE_RDEFER">RDEFER</a></td> |
| <td>( n <name> -- ) Compiler<br>R( -- )<br>creates a RAM based defer vector</td> |
| </tr> |
| <tr> |
| <td>[</td> |
| <td><a href="CodeAsm/leftbracket.html#LBRACKET" title="VE_LBRACKET">LBRACKET</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>put system to interpreter state</td> |
| </tr> |
| <tr> |
| <td>[']</td> |
| <td><a href="CodeAsm/brackettick.html#BRACKETTICK" title="VE_BRACKETTICK">BRACKETTICK</a></td> |
| <td>( -- XT ) Compiler<br>R( -- )<br>what does ' in the interpreter mode do in colon definitions</td> |
| </tr> |
| <tr> |
| <td>\</td> |
| <td><a href="CodeAsm/backslash.html#BACKSLASH" title="VE_BACKSLASH">BACKSLASH</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>everything up to the end of the current line is a comment</td> |
| </tr> |
| <tr> |
| <td>]</td> |
| <td><a href="CodeAsm/rightbracket.html#RBRACKET" title="VE_RBRACKET">RBRACKET</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>turn on compiler</td> |
| </tr> |
| <tr> |
| <td>abort</td> |
| <td><a href="CodeAsm/abort.html#ABORT" title="VE_ABORT">ABORT</a></td> |
| <td>( n*x -- ) Exceptions<br>R( n*y -- )<br>send an exception -1</td> |
| </tr> |
| <tr> |
| <td>abort"</td> |
| <td><a href="CodeAsm/abortstring.html#ABORTSTRING" title="VE_ABORTSTRING">ABORTSTRING</a></td> |
| <td>( n*x -- ) Exceptions<br>R( n*y -- )<br>check flag. If true emit some text and throw exception -2</td> |
| </tr> |
| <tr> |
| <td>abort"</td> |
| <td><a href="CodeAsm/abortstring.html#ABORTSTRING" title="VE_ABORTSTRING">ABORTSTRING</a></td> |
| <td>( n*x -- ) Exceptions<br>R( n*y -- )<br>check flag. If true emit some text and throw exception -2</td> |
| </tr> |
| <tr> |
| <td>abs</td> |
| <td><a href="CodeAsm/abs.html#ABS" title="VE_ABS">ABS</a></td> |
| <td>( n1 -- u1 ) Arithmetics<br>R( -- )<br>get the absolute value</td> |
| </tr> |
| <tr> |
| <td>accept</td> |
| <td><a href="CodeAsm/accept.html#ACCEPT" title="VE_ACCEPT">ACCEPT</a></td> |
| <td>( addr n1 -- n2 ) System<br>R( -- )<br>reads a line with with KEY into addr until n2 characters are reveived or cr/lf detected.</td> |
| </tr> |
| <tr> |
| <td>again</td> |
| <td><a href="CodeAsm/again.html#AGAIN" title="VE_AGAIN">AGAIN</a></td> |
| <td>( addr -- ) Control Structure<br>R( -- )<br>go back to begin</td> |
| </tr> |
| <tr> |
| <td>allot</td> |
| <td><a href="CodeAsm/allot.html#ALLOT" title="VE_ALLOT">ALLOT</a></td> |
| <td>( n -- ) System<br>R( -- )<br>allocate memory in RAM</td> |
| </tr> |
| <tr> |
| <td>and</td> |
| <td><a href="CodeAsm/and.html#AND" title="VE_AND">AND</a></td> |
| <td>( n1 n2 -- n3 ) Logic<br>R( -- )<br>bitwise and</td> |
| </tr> |
| <tr> |
| <td>base</td> |
| <td><a href="CodeAsm/base.html#BASE" title="VE_BASE">BASE</a></td> |
| <td>( -- addr ) Numeric IO<br>R( -- )<br>base fo numeric IO</td> |
| </tr> |
| <tr> |
| <td>baud0</td> |
| <td><a href="CodeAsm/usart.html#BAUD0" title="VE_BAUD0">BAUD0</a></td> |
| <td>( -- v) System Value<br>R( -- )<br>returns usart0 baudrate</td> |
| </tr> |
| <tr> |
| <td>begin</td> |
| <td><a href="CodeAsm/begin.html#BEGIN" title="VE_BEGIN">BEGIN</a></td> |
| <td>( -- addr ) Control Structure<br>R( -- )<br>start a control structture</td> |
| </tr> |
| <tr> |
| <td>bl</td> |
| <td><a href="CodeAsm/bl.html#BL" title="VE_BL">BL</a></td> |
| <td>( -- 32 ) Character IO<br>R( -- )<br>put ascii code of the blank to the stack</td> |
| </tr> |
| <tr> |
| <td>c!</td> |
| <td><a href="CodeAsm/cstore.html#CSTORE" title="VE_CSTORE">CSTORE</a></td> |
| <td>( c addr -- ) Memory<br>R( -- )<br>store a byte to RAM address</td> |
| </tr> |
| <tr> |
| <td>c@</td> |
| <td><a href="CodeAsm/cfetch.html#CFETCH" title="VE_CFETCH">CFETCH</a></td> |
| <td>( addr - c1 ) Memory<br>R( -- )<br>fetch a single byte from RAM (or IO or CPU register)</td> |
| </tr> |
| <tr> |
| <td>case</td> |
| <td><a href="CodeAsm/case.html#CASE" title="VE_CASE">CASE</a></td> |
| <td>( -- 0 ) Control Structure<br>R( -- )</td> |
| </tr> |
| <tr> |
| <td>case</td> |
| <td><a href="CodeAsm/case.html#CASE" title="VE_CASE">CASE</a></td> |
| <td>( -- 0 ) Control Structure<br>R( -- )</td> |
| </tr> |
| <tr> |
| <td>catch</td> |
| <td><a href="CodeAsm/catch.html#CATCH" title="VE_CATCH">CATCH</a></td> |
| <td>( xt -- ) Exceptions<br>R( -- ) or R( ny -- )<br>execute the XT and restore stack frame if an exception is thrown</td> |
| </tr> |
| <tr> |
| <td>char</td> |
| <td><a href="CodeAsm/char.html#CHAR" title="VE_CHAR">CHAR</a></td> |
| <td>( -- c ) Tools<br>R( -- )<br>first character of the next word</td> |
| </tr> |
| <tr> |
| <td>cmove></td> |
| <td><a href="CodeAsm/cmove_g.html#CMOVE_G" title="VE_CMOVE_G">CMOVE_G</a></td> |
| <td>(addr-from addr-to n -- ) Memory<br>R( -- )<br>copy data in RAM</td> |
| </tr> |
| <tr> |
| <td>cold</td> |
| <td><a href="CodeAsm/cold.html#COLD" title="VE_COLD">COLD</a></td> |
| <td>( -- ) System<br>R( -- )<br>main entry word. executes turnkey operation and executes quit</td> |
| </tr> |
| <tr> |
| <td>compile</td> |
| <td><a href="CodeAsm/compile.html#COMPILE" title="VE_COMPILE">COMPILE</a></td> |
| <td>( -- ) Dictionary<br>R( -- )<br>copy the next flash cell to HERE</td> |
| </tr> |
| <tr> |
| <td>constant</td> |
| <td><a href="CodeAsm/constant.html#CONSTANT" title="VE_CONSTANT">CONSTANT</a></td> |
| <td>( n -- ) Compiler<br>R( -- )<br>create a named constant</td> |
| </tr> |
| <tr> |
| <td>count</td> |
| <td><a href="CodeAsm/count.html#COUNT" title="VE_COUNT">COUNT</a></td> |
| <td>( addr -- addr+1 n) String<br>R( -- )<br>addr is the address of a counted string in RAM</td> |
| </tr> |
| <tr> |
| <td>cr</td> |
| <td><a href="CodeAsm/cr.html#CR" title="VE_CR">CR</a></td> |
| <td>( -- ) Character IO<br>R( -- )<br>emits CR/LF</td> |
| </tr> |
| <tr> |
| <td>create</td> |
| <td><a href="CodeAsm/create.html#CREATE" title="VE_CREATE">CREATE</a></td> |
| <td>( -- ) Dictionary<br>R( -- )<br>create a complete dictionary header.</td> |
| </tr> |
| <tr> |
| <td>cscan</td> |
| <td><a href="CodeAsm/char-scan.html#CSCAN" title="VE_CSCAN">CSCAN</a></td> |
| <td>( addr1 n1 c -- addr1 n2 ) String<br>R( -- )<br>Scan string at addr1/n1 until first c, leaving addr1/n2, char at n2 is last non-c character</td> |
| </tr> |
| <tr> |
| <td>cskip</td> |
| <td><a href="CodeAsm/char-skip.html#CSKIP" title="VE_CSKIP">CSKIP</a></td> |
| <td>( addr1 n1 c -- addr2 n2 ) String<br>R( -- )<br>skips leading occurancies in string at addr1/n1 leaving addr2/n2 pointing to the 1st non-c character</td> |
| </tr> |
| <tr> |
| <td>d+</td> |
| <td><a href="CodeAsm/d-plus.html#DPLUS" title="VE_DPLUS">DPLUS</a></td> |
| <td>( d1 d2 -- d3) Arithmetics<br>R( -- )<br>add double cell values</td> |
| </tr> |
| <tr> |
| <td>d+</td> |
| <td><a href="CodeAsm/d-plus.html#DPLUS" title="VE_DPLUS">DPLUS</a></td> |
| <td>( d1 d2 -- d3) Arithmetics<br>R( -- )<br>add double cell values</td> |
| </tr> |
| <tr> |
| <td>d-</td> |
| <td><a href="CodeAsm/d-minus.html#DMINUS" title="VE_DMINUS">DMINUS</a></td> |
| <td>( d1 d2 -- d3 ) Arithmetics<br>R( -- )<br>subtract double cell values</td> |
| </tr> |
| <tr> |
| <td>d-</td> |
| <td><a href="CodeAsm/d-minus.html#DMINUS" title="VE_DMINUS">DMINUS</a></td> |
| <td>( d1 d2 -- d3 ) Arithmetics<br>R( -- )<br>subtract double cell values</td> |
| </tr> |
| <tr> |
| <td>d2*</td> |
| <td><a href="CodeAsm/d-2star.html#D2STAR" title="VE_D2STAR">D2STAR</a></td> |
| <td>( d1 -- d2 ) Arithmetics<br>R( -- )<br>shift a double cell left</td> |
| </tr> |
| <tr> |
| <td>d2*</td> |
| <td><a href="CodeAsm/d-2star.html#D2STAR" title="VE_D2STAR">D2STAR</a></td> |
| <td>( d1 -- d2 ) Arithmetics<br>R( -- )<br>shift a double cell left</td> |
| </tr> |
| <tr> |
| <td>d2/</td> |
| <td><a href="CodeAsm/d-2slash.html#D2SLASH" title="VE_D2SLASH">D2SLASH</a></td> |
| <td>( d1 -- d2 ) Arithmetics<br>R( -- )<br>shift a double cell value right</td> |
| </tr> |
| <tr> |
| <td>d<</td> |
| <td><a href="CodeAsm/d-less.html#DLESS" title="VE_DLESS">DLESS</a></td> |
| <td>( d1 d2 -- flasg) Compare<br>R( -- )<br>compare two values</td> |
| </tr> |
| <tr> |
| <td>d></td> |
| <td><a href="CodeAsm/d-greater.html#DGREATER" title="VE_DGREATER">DGREATER</a></td> |
| <td>( d1 d2 -- flag ) Compare<br>R( -- )<br>compares two values (signed)</td> |
| </tr> |
| <tr> |
| <td>d>s</td> |
| <td><a href="CodeAsm/d_to_s.html#D2S" title="VE_D2S">D2S</a></td> |
| <td>( d1 -- n1 ) Conversion<br>R( -- )<br>shrink double cell value to single cell.</td> |
| </tr> |
| <tr> |
| <td>decimal</td> |
| <td><a href="CodeAsm/decimal.html#DECIMAL" title="VE_DECIMAL">DECIMAL</a></td> |
| <td>( -- ) Numeric IO<br>R( -- )<br>set base to 10 (decimal)</td> |
| </tr> |
| <tr> |
| <td>defer!</td> |
| <td><a href="CodeAsm/defer-store.html#DEFERSTORE" title="VE_DEFERSTORE">DEFERSTORE</a></td> |
| <td>( xt1 xt2 -- ) System<br>R( -- )<br>stores xt1 as the xt to be executed when xt2 is called</td> |
| </tr> |
| <tr> |
| <td>defer@</td> |
| <td><a href="CodeAsm/defer-fetch.html#DEFERFETCH" title="VE_DEFERFETCH">DEFERFETCH</a></td> |
| <td>( xt1 -- xt2 ) System<br>R( -- )<br>returns the XT assoziates with the given XT</td> |
| </tr> |
| <tr> |
| <td>depth</td> |
| <td><a href="CodeAsm/depth.html#DEPTH" title="VE_DEPTH">DEPTH</a></td> |
| <td>( -- n ) Stack<br>R( -- )<br>currently used data stack size in cells</td> |
| </tr> |
| <tr> |
| <td>digit</td> |
| <td><a href="CodeAsm/digit.html#DIGIT" title="VE_DIGIT">DIGIT</a></td> |
| <td>( c base -- number flag ) Numeric IO<br>R( -- )<br>convert character to number, set flag if successful</td> |
| </tr> |
| <tr> |
| <td>dinvert</td> |
| <td><a href="CodeAsm/d-invert.html#DINVERT" title="VE_DINVERT">DINVERT</a></td> |
| <td>( d1 -- d2) Arithmetics<br>R( -- )<br>flip all bits in the double cell value</td> |
| </tr> |
| <tr> |
| <td>dinvert</td> |
| <td><a href="CodeAsm/d-invert.html#DINVERT" title="VE_DINVERT">DINVERT</a></td> |
| <td>( d1 -- d2) Arithmetics<br>R( -- )<br>flip all bits in the double cell value</td> |
| </tr> |
| <tr> |
| <td>do</td> |
| <td><a href="CodeAsm/do.html#DO" title="VE_DO">DO</a></td> |
| <td>( -- addr ) Control Structure<br>R( -- )<br>start do .. [+]loop</td> |
| </tr> |
| <tr> |
| <td>does></td> |
| <td><a href="CodeAsm/does.html#DOES" title="VE_DOES">DOES</a></td> |
| <td>( -- ) Compiler<br>R( -- )</td> |
| </tr> |
| <tr> |
| <td>dp</td> |
| <td><a href="CodeAsm/dp.html#DP" title="VE_DP">DP</a></td> |
| <td>( -- eaddr) System Pointer<br>R( -- )<br>first unused address in flash (NRWW is always used)</td> |
| </tr> |
| <tr> |
| <td>drop</td> |
| <td><a href="CodeAsm/drop.html#DROP" title="VE_DROP">DROP</a></td> |
| <td>( n -- ) Stack<br>R( -- )<br>drop TOS</td> |
| </tr> |
| <tr> |
| <td>dup</td> |
| <td><a href="CodeAsm/dup.html#DUP" title="VE_DUP">DUP</a></td> |
| <td>( n -- n n ) Stack<br>R( -- )<br>duplicate TOS</td> |
| </tr> |
| <tr> |
| <td>e!</td> |
| <td><a href="CodeAsm/estore.html#ESTORE" title="VE_ESTORE">ESTORE</a></td> |
| <td>( n addr -- ) Memory<br>R( -- )<br>write to eeprom address</td> |
| </tr> |
| <tr> |
| <td>e@</td> |
| <td><a href="CodeAsm/efetch.html#EFETCH" title="VE_EFETCH">EFETCH</a></td> |
| <td>( addr - n) Memory<br>R( -- )<br>read 2 bytes from eeprom</td> |
| </tr> |
| <tr> |
| <td>edp</td> |
| <td><a href="CodeAsm/edp.html#EDP" title="VE_EDP">EDP</a></td> |
| <td>( -- eaddr) System Pointer<br>R( -- )<br>first unused address in eeprom</td> |
| </tr> |
| <tr> |
| <td>else</td> |
| <td><a href="CodeAsm/else.html#ELSE" title="VE_ELSE">ELSE</a></td> |
| <td>( addr1 -- addr2) Compiler<br>R( -- )</td> |
| </tr> |
| <tr> |
| <td>emit</td> |
| <td><a href="CodeAsm/emit.html#EMIT" title="VE_EMIT">EMIT</a></td> |
| <td>( -- eaddr) Character IO<br>R( -- )<br>fetch the emit vector and execute it</td> |
| </tr> |
| <tr> |
| <td>emit?</td> |
| <td><a href="CodeAsm/emitq.html#EMITQ" title="VE_EMITQ">EMITQ</a></td> |
| <td>( -- c) Character IO<br>R( -- )<br>fetch emit? vector and execute it</td> |
| </tr> |
| <tr> |
| <td>endcase</td> |
| <td><a href="CodeAsm/endcase.html#ENDCASE" title="VE_ENDCASE">ENDCASE</a></td> |
| <td>( f -- ) Compiler<br>R( -- )</td> |
| </tr> |
| <tr> |
| <td>endcase</td> |
| <td><a href="CodeAsm/endcase.html#ENDCASE" title="VE_ENDCASE">ENDCASE</a></td> |
| <td>( f -- ) Compiler<br>R( -- )</td> |
| </tr> |
| <tr> |
| <td>endof</td> |
| <td><a href="CodeAsm/endof.html#ENDOF" title="VE_ENDOF">ENDOF</a></td> |
| <td>( addr1 -- addr2 ) Compiler<br>R( -- )</td> |
| </tr> |
| <tr> |
| <td>endof</td> |
| <td><a href="CodeAsm/endof.html#ENDOF" title="VE_ENDOF">ENDOF</a></td> |
| <td>( addr1 -- addr2 ) Compiler<br>R( -- )</td> |
| </tr> |
| <tr> |
| <td>execute</td> |
| <td><a href="CodeAsm/execute.html#EXECUTE" title="VE_EXECUTE">EXECUTE</a></td> |
| <td>( xt -- ) System<br>R( -- )<br>execute XT</td> |
| </tr> |
| <tr> |
| <td>exit</td> |
| <td><a href="CodeAsm/exit.html#EXIT" title="VE_EXIT">EXIT</a></td> |
| <td>( -- ) Compiler<br>R( xt -- )<br>end of current colon word</td> |
| </tr> |
| <tr> |
| <td>f_cpu</td> |
| <td><a href="CodeAsm/f_cpu.html#F_CPU" title="VE_F_CPU">F_CPU</a></td> |
| <td>( -- f_cou ) System<br>R( -- )<br>put the cpu frequency on stack</td> |
| </tr> |
| <tr> |
| <td>find</td> |
| <td><a href="CodeAsm/find.html#FIND" title="VE_FIND">FIND</a></td> |
| <td>( addr -- -- [ addr 0 ] | [ xt [-1|1]] ) Tools<br>R( -- )<br>search dictionary</td> |
| </tr> |
| <tr> |
| <td>handler</td> |
| <td><a href="CodeAsm/handler.html#HANDLER" title="VE_HANDLER">HANDLER</a></td> |
| <td>( -- addr ) Exceptions<br>R( -- )<br>used by catch/throw</td> |
| </tr> |
| <tr> |
| <td>heap</td> |
| <td><a href="CodeAsm/heap.html#HEAP" title="VE_HEAP">HEAP</a></td> |
| <td>( -- eaddr) System Pointer<br>R( -- )<br> address of first unallocated RAM</td> |
| </tr> |
| <tr> |
| <td>here</td> |
| <td><a href="CodeAsm/here.html#HERE" title="VE_HERE">HERE</a></td> |
| <td>( -- addr ) System Pointer<br>R( -- )</td> |
| </tr> |
| <tr> |
| <td>hex</td> |
| <td><a href="CodeAsm/hex.html#HEX" title="VE_HEX">HEX</a></td> |
| <td>( -- ) Numeric IO<br>R( -- )<br>set base to 16 (decimal)</td> |
| </tr> |
| <tr> |
| <td>hld</td> |
| <td><a href="CodeAsm/hld.html#HLD" title="VE_HLD">HLD</a></td> |
| <td>( -- addr ) Numeric IO<br>R( -- )<br>address of buffer for pictured numeric output</td> |
| </tr> |
| <tr> |
| <td>hold</td> |
| <td><a href="CodeAsm/hold.html#HOLD" title="VE_HOLD">HOLD</a></td> |
| <td>( c -- ) Numeric IO<br>R( -- )<br>prepend character to pictured numeric output buffer</td> |
| </tr> |
| <tr> |
| <td>i</td> |
| <td><a href="CodeAsm/i.html#I" title="VE_I">I</a></td> |
| <td>( -- n ) Control Structure<br>R( loop-sys -- loop-sys)<br>current loop counter</td> |
| </tr> |
| <tr> |
| <td>i!</td> |
| <td><a href="CodeAsm/istore.html#ISTORE" title="VE_ISTORE">ISTORE</a></td> |
| <td>( n addr -- ) Memory<br>R( -- )<br>writes a cell in flash</td> |
| </tr> |
| <tr> |
| <td>i@</td> |
| <td><a href="CodeAsm/ifetch.html#IFETCH" title="VE_IFETCH">IFETCH</a></td> |
| <td>( addr -- n1 ) Memory<br>R( -- )<br>reads a cell from flash, addr is cell address, not byte addres first byte gets into the lower word on tos</td> |
| </tr> |
| <tr> |
| <td>icount</td> |
| <td><a href="CodeAsm/icount.html#ICOUNT" title="VE_ICOUNT">ICOUNT</a></td> |
| <td>( adr -- adr n ) Tools<br>R( -- )<br>get count byte out of packed counted string in flash</td> |
| </tr> |
| <tr> |
| <td>idump</td> |
| <td><a href="CodeAsm/idump.html#IDUMP" title="VE_IDUMP">IDUMP</a></td> |
| <td>( addr len -- ) Tools<br>R( -- )<br>dumps flash memory beginning with address addr and len cells long</td> |
| </tr> |
| <tr> |
| <td>idump</td> |
| <td><a href="CodeAsm/idump.html#IDUMP" title="VE_IDUMP">IDUMP</a></td> |
| <td>( addr len -- ) Tools<br>R( -- )<br>dumps flash memory beginning with address addr and len cells long</td> |
| </tr> |
| <tr> |
| <td>if</td> |
| <td><a href="CodeAsm/if.html#IF" title="VE_IF">IF</a></td> |
| <td>( -- addr ) Control Structure<br>R( -- )<br>start conditional branch</td> |
| </tr> |
| <tr> |
| <td>immediate</td> |
| <td><a href="CodeAsm/immediate.html#IMMEDIATE" title="VE_IMMEDIATE">IMMEDIATE</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>set immediate flag</td> |
| </tr> |
| <tr> |
| <td>int</td> |
| <td><a href="CodeAsm/intx.html#INTON" title="VE_INTON">INTON</a></td> |
| <td>( -- ) Interrupt<br>R( -- )<br>turns on all interrupts</td> |
| </tr> |
| <tr> |
| <td>int!</td> |
| <td><a href="CodeAsm/intx.html#INTSTORE" title="VE_INTSTORE">INTSTORE</a></td> |
| <td>( xt i -- ) Interrupt<br>R( -- )<br>stores XT as interrupt vector i</td> |
| </tr> |
| <tr> |
| <td>int@</td> |
| <td><a href="CodeAsm/intx.html#INTFETCH" title="VE_INTFETCH">INTFETCH</a></td> |
| <td>( i -- xt ) Interrupt<br>R( -- )<br>fetches XT from interrupt vector i</td> |
| </tr> |
| <tr> |
| <td>interpret</td> |
| <td><a href="CodeAsm/interpret.html#INTERPRET" title="VE_INTERPRET">INTERPRET</a></td> |
| <td>( -- ) System<br>R(i*x - j*x )<br>interpret input word by word. may throw exceptions</td> |
| </tr> |
| <tr> |
| <td>invert</td> |
| <td><a href="CodeAsm/invert.html#INVERT" title="VE_INVERT">INVERT</a></td> |
| <td>( n1 -- n2) Arithmetics<br>R( -- )<br>1-complement of TOS</td> |
| </tr> |
| <tr> |
| <td>is</td> |
| <td><a href="CodeAsm/is.html#IS" title="VE_IS">IS</a></td> |
| <td>( xt1 c<char> -- ) System<br>R( --)<br>stores xt into defer or compiles code to do so at runtime</td> |
| </tr> |
| <tr> |
| <td>is</td> |
| <td><a href="CodeAsm/is.html#IS" title="VE_IS">IS</a></td> |
| <td>( xt1 c<char> -- ) System<br>R( --)<br>stores xt into defer or compiles code to do so at runtime</td> |
| </tr> |
| <tr> |
| <td>itype</td> |
| <td><a href="CodeAsm/itype.html#ITYPE" title="VE_ITYPE">ITYPE</a></td> |
| <td>( addr n -- ) Tools<br>R( -- )<br>reads packed string from flash and emit it</td> |
| </tr> |
| <tr> |
| <td>j</td> |
| <td><a href="CodeAsm/j.html#J" title="VE_J">J</a></td> |
| <td>( -- n ) Control Structure<br>R( loop-sys1 loop-sys2 -- loop-sys1 loop-sys2)<br>loop counter of outer loop</td> |
| </tr> |
| <tr> |
| <td>key</td> |
| <td><a href="CodeAsm/key.html#KEY" title="VE_KEY">KEY</a></td> |
| <td>( -- c ) Character IO<br>R( -- )<br>fetch key vector and execute it</td> |
| </tr> |
| <tr> |
| <td>key?</td> |
| <td><a href="CodeAsm/keyq.html#KEYQ" title="VE_KEYQ">KEYQ</a></td> |
| <td>( -- f) Character IO<br>R( -- )<br>fetch 'key? vector and execute it. Leave true if a character can be read, false otherwise</td> |
| </tr> |
| <tr> |
| <td>leave</td> |
| <td><a href="CodeAsm/leave.html#LEAVE" title="VE_LEAVE">LEAVE</a></td> |
| <td>( -- )<br>R(next limit counter -- next )<br>runtime of leave</td> |
| </tr> |
| <tr> |
| <td>leave</td> |
| <td><a href="CodeAsm/leave.html#LEAVE" title="VE_LEAVE">LEAVE</a></td> |
| <td>( -- )<br>R(next limit counter -- next )<br>runtime of leave</td> |
| </tr> |
| <tr> |
| <td>literal</td> |
| <td><a href="CodeAsm/literal.html#LITERAL" title="VE_LITERAL">LITERAL</a></td> |
| <td>( n -- ) Compiler<br>R( -- )<br>compile a literal in colon defintions</td> |
| </tr> |
| <tr> |
| <td>log2</td> |
| <td><a href="CodeAsm/log2.html#LOG2" title="VE_LOG2">LOG2</a></td> |
| <td>( n1 -- n2 ) Arithmetics<br>R( -- )<br>logarithm base 2 or highest set bitnumber</td> |
| </tr> |
| <tr> |
| <td>loop</td> |
| <td><a href="CodeAsm/loop.html#LOOP" title="VE_LOOP">LOOP</a></td> |
| <td>( addr -- ) Control Structure<br>R( -- )<br>cpmpile (loop) and resolve branch</td> |
| </tr> |
| <tr> |
| <td>lshift</td> |
| <td><a href="CodeAsm/lshift.html#LSHIFT" title="VE_LSHIFT">LSHIFT</a></td> |
| <td>( n1 n2 -- n3) Arithmetics<br>R( -- )<br>logical shift left</td> |
| </tr> |
| <tr> |
| <td>m*</td> |
| <td><a href="CodeAsm/mstar.html#MSTAR" title="VE_MSTAR">MSTAR</a></td> |
| <td>( n1 n2 -- d) Arithmetics<br>R( -- )<br>multiply 2 cells to a double cell</td> |
| </tr> |
| <tr> |
| <td>max</td> |
| <td><a href="CodeAsm/max.html#MAX" title="VE_MAX">MAX</a></td> |
| <td>( n1 n2 -- n1|n2 ) Compare<br>R( -- )<br>compare two values, leave the bigger one</td> |
| </tr> |
| <tr> |
| <td>min</td> |
| <td><a href="CodeAsm/min.html#MIN" title="VE_MIN">MIN</a></td> |
| <td>( n1 n2 -- n1|n2 ) Compare<br>R( -- )<br>compare two values leave the smaller one</td> |
| </tr> |
| <tr> |
| <td>mod</td> |
| <td><a href="CodeAsm/mod.html#MOD" title="VE_MOD">MOD</a></td> |
| <td>( n1 n2 -- n3) Arithmetics<br>R( -- )<br>remainder of division</td> |
| </tr> |
| <tr> |
| <td>negate</td> |
| <td><a href="CodeAsm/negate.html#NEGATE" title="VE_NEGATE">NEGATE</a></td> |
| <td>( n1 -- n2 ) Logic<br>R( -- )<br>2-complement</td> |
| </tr> |
| <tr> |
| <td>noop</td> |
| <td><a href="CodeAsm/noop.html#NOOP" title="VE_NOOP">NOOP</a></td> |
| <td>( -- ) Tools<br>R( -- )<br>do nothing</td> |
| </tr> |
| <tr> |
| <td>not</td> |
| <td><a href="CodeAsm/not.html#NOT" title="VE_NOT">NOT</a></td> |
| <td>( flag -- flag' ) Logic<br>R( -- )<br>identical to 0=</td> |
| </tr> |
| <tr> |
| <td>number</td> |
| <td><a href="CodeAsm/number.html#NUMBER" title="VE_NUMBER">NUMBER</a></td> |
| <td>(addr -- n ) Numeric IO<br>R( -- )<br>convert a word to a number, throw exception -1 on error</td> |
| </tr> |
| <tr> |
| <td>of</td> |
| <td><a href="CodeAsm/of.html#OF" title="VE_OF">OF</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>see case</td> |
| </tr> |
| <tr> |
| <td>of</td> |
| <td><a href="CodeAsm/of.html#OF" title="VE_OF">OF</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>see case</td> |
| </tr> |
| <tr> |
| <td>or</td> |
| <td><a href="CodeAsm/or.html#OR" title="VE_OR">OR</a></td> |
| <td>( n1 n2 -- n3 ) Logic<br>R( -- )<br>logical or</td> |
| </tr> |
| <tr> |
| <td>over</td> |
| <td><a href="CodeAsm/over.html#OVER" title="VE_OVER">OVER</a></td> |
| <td>( n1 n2 -- n1 n2 n1 ) Stack<br>R( -- )<br>stack manipulation</td> |
| </tr> |
| <tr> |
| <td>pad</td> |
| <td><a href="CodeAsm/pad.html#PAD" title="VE_PAD">PAD</a></td> |
| <td>( -- addr ) System Pointer<br>R( -- )<br>scratch buffer.</td> |
| </tr> |
| <tr> |
| <td>parse</td> |
| <td><a href="CodeAsm/parse.html#PARSE" title="VE_PARSE">PARSE</a></td> |
| <td>( char "ccc" -- c-addr u ) String<br>R( -- )<br>in input buffer parse ccc delimited string by the delimiter char.</td> |
| </tr> |
| <tr> |
| <td>pause</td> |
| <td><a href="CodeAsm/pause.html#PAUSE" title="VE_PAUSE">PAUSE</a></td> |
| <td>( -- ) Multitasking<br>R( -- )<br>fetch pause vector and execute it. may make a context/task switch</td> |
| </tr> |
| <tr> |
| <td>quit</td> |
| <td><a href="CodeAsm/quit.html#QUIT" title="VE_QUIT">QUIT</a></td> |
| <td>( -- ) System<br>R( -- )<br>main loop of amforth. accept - interpret in an endless loop</td> |
| </tr> |
| <tr> |
| <td>r></td> |
| <td><a href="CodeAsm/r_from.html#R_FROM" title="VE_R_FROM">R_FROM</a></td> |
| <td>( -- n ) Stack<br>R( n --)<br>move TOR to TOS</td> |
| </tr> |
| <tr> |
| <td>r@</td> |
| <td><a href="CodeAsm/r_fetch.html#R_FETCH" title="VE_R_FETCH">R_FETCH</a></td> |
| <td>( -- n) Stack<br>R( n -- n )<br>fetch content of TOR</td> |
| </tr> |
| <tr> |
| <td>recurse</td> |
| <td><a href="CodeAsm/recurse.html#RECURSE" title="VE_RECURSE">RECURSE</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>compile XT of the word beeing currently defined into dictionary (! not conforming to ANS!)</td> |
| </tr> |
| <tr> |
| <td>refill</td> |
| <td><a href="CodeAsm/refill.html#REFILL" title="VE_REFILL">REFILL</a></td> |
| <td>( -- f ) IO<br>R( -- )<br>refills the input buffer</td> |
| </tr> |
| <tr> |
| <td>repeat</td> |
| <td><a href="CodeAsm/repeat.html#REPEAT" title="VE_REPEAT">REPEAT</a></td> |
| <td>(addr1 -- addr2 ) Control Structure<br>R( -- )<br>go back to begin</td> |
| </tr> |
| <tr> |
| <td>rot</td> |
| <td><a href="CodeAsm/rot.html#ROT" title="VE_ROT">ROT</a></td> |
| <td>( n1 n2 n3 -- n2 n3 n1) Stack<br>R( -- )<br>stack manupulation</td> |
| </tr> |
| <tr> |
| <td>rp</td> |
| <td><a href="CodeAsm/rp0.html#RP" title="VE_RP">RP</a></td> |
| <td>( -- addr) Stackpointer<br>R( -- )<br>address of variable to store the return stack pointer for inactive tasks</td> |
| </tr> |
| <tr> |
| <td>rp!</td> |
| <td><a href="CodeAsm/rpstore.html#RP_STORE" title="VE_RP_STORE">RP_STORE</a></td> |
| <td>( n -- ) Stackpointer<br>R( -- xy)<br>set return stack pointer</td> |
| </tr> |
| <tr> |
| <td>rp0</td> |
| <td><a href="CodeAsm/rp0.html#RP0" title="VE_RP0">RP0</a></td> |
| <td>( -- addr) Stackpointer<br>R( -- )<br>start value of return stack</td> |
| </tr> |
| <tr> |
| <td>rp@</td> |
| <td><a href="CodeAsm/rpfetch.html#RP_FETCH" title="VE_RP_FETCH">RP_FETCH</a></td> |
| <td>( -- n) Stackpointer<br>R( -- )<br>current return stack pointer address</td> |
| </tr> |
| <tr> |
| <td>rshift</td> |
| <td><a href="CodeAsm/rshift.html#RSHIFT" title="VE_RSHIFT">RSHIFT</a></td> |
| <td>( n1 n2 -- n3 ) Arithmetics<br>R( -- )<br>logical shift right</td> |
| </tr> |
| <tr> |
| <td>rx0</td> |
| <td><a href="CodeAsm/usart.html#RX0" title="VE_RX0">RX0</a></td> |
| <td>( -- c) Hardware Access<br>R( --)<br>get 1 character from input queue, wait if needed</td> |
| </tr> |
| <tr> |
| <td>rx0?</td> |
| <td><a href="CodeAsm/usart.html#RX0Q" title="VE_RX0Q">RX0Q</a></td> |
| <td>( -- f) Hardware Access<br>R( --)<br>check if unread characters are in the input queue.</td> |
| </tr> |
| <tr> |
| <td>s"</td> |
| <td><a href="CodeAsm/squote.html#SQUOTE" title="VE_SQUOTE">SQUOTE</a></td> |
| <td>( <cchar> -- ) Compiler<br>R( -- )<br>compiles a string to flash, at runtime leaves ( -- addr count) on stack</td> |
| </tr> |
| <tr> |
| <td>s"</td> |
| <td><a href="CodeAsm/squote.html#SQUOTE" title="VE_SQUOTE">SQUOTE</a></td> |
| <td>( <cchar> -- ) Compiler<br>R( -- )<br>compiles a string to flash, at runtime leaves ( -- addr count) on stack</td> |
| </tr> |
| <tr> |
| <td>s,</td> |
| <td><a href="CodeAsm/scomma.html#SCOMMA" title="VE_SCOMMA">SCOMMA</a></td> |
| <td>( addr len -- ) Compiler<br>R( -- )<br>compiles a string from RAM to Flash</td> |
| </tr> |
| <tr> |
| <td>s>d</td> |
| <td><a href="CodeAsm/s_to_d.html#S2D" title="VE_S2D">S2D</a></td> |
| <td>( n1 -- d1 ) Conversion<br>R( -- )<br>extend (signed) single cell value to double cell</td> |
| </tr> |
| <tr> |
| <td>sign</td> |
| <td><a href="CodeAsm/sign.html#SIGN" title="VE_SIGN">SIGN</a></td> |
| <td>( n -- ) Numeric IO<br>R( -- )<br>place a - in HLD if value is negative</td> |
| </tr> |
| <tr> |
| <td>sleep</td> |
| <td><a href="CodeAsm/sleep.html#SLEEP" title="VE_SLEEP">SLEEP</a></td> |
| <td>( -- ) Interrupt<br>R( -- )<br>calls the MCU sleep instruction. Not useful itself!</td> |
| </tr> |
| <tr> |
| <td>source</td> |
| <td><a href="CodeAsm/source.html#SOURCE" title="VE_SOURCE">SOURCE</a></td> |
| <td>( addr1 u1 n-- addr2 u2 ) System<br>R( -- )<br>adjust string from addr1 to addr1+n, reduce length from u1 to u2</td> |
| </tr> |
| <tr> |
| <td>sp</td> |
| <td><a href="CodeAsm/sp0.html#SP" title="VE_SP">SP</a></td> |
| <td>( -- addr) Stackpointer<br>R( -- )<br>address of variable to store data stack pointer for inactive tasks</td> |
| </tr> |
| <tr> |
| <td>sp!</td> |
| <td><a href="CodeAsm/spstore.html#SP_STORE" title="VE_SP_STORE">SP_STORE</a></td> |
| <td>( addr -- i*x) Stackpointer<br>R( -- )<br>data stack pointer changed to addr</td> |
| </tr> |
| <tr> |
| <td>sp0</td> |
| <td><a href="CodeAsm/sp0.html#SP0" title="VE_SP0">SP0</a></td> |
| <td>( -- addr) Stackpointer<br>R( -- )<br>start of data stack</td> |
| </tr> |
| <tr> |
| <td>sp@</td> |
| <td><a href="CodeAsm/spfetch.html#SP_FETCH" title="VE_SP_FETCH">SP_FETCH</a></td> |
| <td>( -- n) Stackpointer<br>R( -- )<br>current data stack pointer</td> |
| </tr> |
| <tr> |
| <td>space</td> |
| <td><a href="CodeAsm/space.html#SPACE" title="VE_SPACE">SPACE</a></td> |
| <td>( -- ) Character IO<br>R( -- )<br>emits a space (bl)</td> |
| </tr> |
| <tr> |
| <td>state</td> |
| <td><a href="CodeAsm/state.html#STATE" title="VE_STATE">STATE</a></td> |
| <td>( -- addr ) Compiler<br>R( -- )<br>system state</td> |
| </tr> |
| <tr> |
| <td>swap</td> |
| <td><a href="CodeAsm/swap.html#SWAP" title="VE_SWAP">SWAP</a></td> |
| <td>( n1 n2 -- n2 n1) Stack<br>R( -- )<br>stack manipulation</td> |
| </tr> |
| <tr> |
| <td>then</td> |
| <td><a href="CodeAsm/then.html#THEN" title="VE_THEN">THEN</a></td> |
| <td>( addr -- ) Compiler<br>R( -- )<br>finish if</td> |
| </tr> |
| <tr> |
| <td>throw</td> |
| <td><a href="CodeAsm/throw.html#THROW" title="VE_THROW">THROW</a></td> |
| <td>( n -- ) Exceptions<br>R( -- )<br>throw an exception</td> |
| </tr> |
| <tr> |
| <td>tib</td> |
| <td><a href="CodeAsm/tib.html#TIB" title="VE_TIB">TIB</a></td> |
| <td>( -- addr ) System Pointer<br>R( -- )<br>terminal input buffer address</td> |
| </tr> |
| <tr> |
| <td>to</td> |
| <td><a href="CodeAsm/to.html#TO" title="VE_TO">TO</a></td> |
| <td>( n <name> -- ) Tools<br>R( --)<br>store the TOS to value (an EEPROM 16bit cell)</td> |
| </tr> |
| <tr> |
| <td>turnkey</td> |
| <td><a href="CodeAsm/turnkey.html#TURNKEY" title="VE_TURNKEY">TURNKEY</a></td> |
| <td>( -- eaddr) System Pointer<br>R( -- )<br>address of the variable that holds an XT to be started by cold before quit takes over</td> |
| </tr> |
| <tr> |
| <td>tx0</td> |
| <td><a href="CodeAsm/usart.html#TX0" title="VE_TX0">TX0</a></td> |
| <td>(c -- ) Hardware Access<br>R( --)<br>put 1 character into output queue, wait if needed, enable UDRIE0 interrupt</td> |
| </tr> |
| <tr> |
| <td>tx0?</td> |
| <td><a href="CodeAsm/usart.html#TX0Q" title="VE_TX0Q">TX0Q</a></td> |
| <td>( -- f) Hardware Access<br>R( --)<br>check if a character can be appended to output queue.</td> |
| </tr> |
| <tr> |
| <td>type</td> |
| <td><a href="CodeAsm/type.html#TYPE" title="VE_TYPE">TYPE</a></td> |
| <td>( addr n -- ) Character IO<br>R( -- )<br>emits a string</td> |
| </tr> |
| <tr> |
| <td>u*/mod</td> |
| <td><a href="CodeAsm/ustarslashmod.html#USTARSLASHMOD" title="VE_USTARSLASHMOD">USTARSLASHMOD</a></td> |
| <td>( u1 u2 u3 -- rem quot) Arithmetics<br>R( -- )<br>unsigned division with remainder u3 * u2 / u1</td> |
| </tr> |
| <tr> |
| <td>u.</td> |
| <td><a href="CodeAsm/udot.html#UDOT" title="VE_UDOT">UDOT</a></td> |
| <td>( n -- ) Numeric IO<br>R( -- )<br>unsigned numeric output</td> |
| </tr> |
| <tr> |
| <td>u.</td> |
| <td><a href="CodeAsm/udot.html#UDOT" title="VE_UDOT">UDOT</a></td> |
| <td>( n -- ) Numeric IO<br>R( -- )<br>unsigned numeric output</td> |
| </tr> |
| <tr> |
| <td>u/mod</td> |
| <td><a href="CodeAsm/uslashmod.html#USLASHMOD" title="VE_USLASHMOD">USLASHMOD</a></td> |
| <td>(u1 u2 -- rem quot) Arithmetics<br>R( -- )<br>unsigned division with remainder</td> |
| </tr> |
| <tr> |
| <td>u<</td> |
| <td><a href="CodeAsm/uless.html#ULESS" title="VE_ULESS">ULESS</a></td> |
| <td>( u1 u2 -- flasg) Compare<br>R( -- )<br>compare values u1 < u2 (unsigned)</td> |
| </tr> |
| <tr> |
| <td>u></td> |
| <td><a href="CodeAsm/ugreater.html#UGREATER" title="VE_UGREATER">UGREATER</a></td> |
| <td>( u1 u2 -- flag ) Compare<br>R( -- )<br>compares u1 > u2 (unsigned)</td> |
| </tr> |
| <tr> |
| <td>um/mod</td> |
| <td><a href="CodeAsm/umslashmod.html#UMSLASHMOD" title="VE_UMSLASHMOD">UMSLASHMOD</a></td> |
| <td>( ud u2 -- rem quot) Arithmetics<br>R( -- )<br>unsigned division ud / u2 with remainder</td> |
| </tr> |
| <tr> |
| <td>unloop</td> |
| <td><a href="CodeAsm/unloop.html#UNLOOP" title="VE_UNLOOP">UNLOOP</a></td> |
| <td>( -- ) Control Structure<br>R(loop-sys -- )<br>remove loop-sys</td> |
| </tr> |
| <tr> |
| <td>until</td> |
| <td><a href="CodeAsm/until.html#UNTIL" title="VE_UNTIL">UNTIL</a></td> |
| <td>( addr -- ) Compiler<br>R( -- )<br>finish begin with conditional branch</td> |
| </tr> |
| <tr> |
| <td>unused</td> |
| <td><a href="CodeAsm/unused.html#UNUSED" title="VE_UNUSED">UNUSED</a></td> |
| <td>( -- n ) Tools<br>R( -- )<br>number of unused flash cells</td> |
| </tr> |
| <tr> |
| <td>up!</td> |
| <td><a href="CodeAsm/up.html#UP_STORE" title="VE_UP_STORE">UP_STORE</a></td> |
| <td>( addr -- ) System<br>R( -- )<br>set user pointer</td> |
| </tr> |
| <tr> |
| <td>up@</td> |
| <td><a href="CodeAsm/up.html#UP_FETCH" title="VE_UP_FETCH">UP_FETCH</a></td> |
| <td>( -- addr ) System<br>R( -- )<br>get user pointer</td> |
| </tr> |
| <tr> |
| <td>usart0</td> |
| <td><a href="CodeAsm/usart.html#USART0" title="VE_USART0">USART0</a></td> |
| <td>( -- ) Hardware Access<br>R( --)<br>initialize usart0</td> |
| </tr> |
| <tr> |
| <td>user</td> |
| <td><a href="CodeAsm/user.html#USER" title="VE_USER">USER</a></td> |
| <td>( n -- ) Compiler<br>R( -- )<br>define a new user variable</td> |
| </tr> |
| <tr> |
| <td>value</td> |
| <td><a href="CodeAsm/value.html#VALUE" title="VE_VALUE">VALUE</a></td> |
| <td>( n <name> -- ) Compiler<br>R( -- )<br>allocate space for 1 cell in EEPROM. used in conjunction with TO</td> |
| </tr> |
| <tr> |
| <td>variable</td> |
| <td><a href="CodeAsm/variable.html#VARIABLE" title="VE_VARIABLE">VARIABLE</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>create a variable entry and allocate RAM space for it</td> |
| </tr> |
| <tr> |
| <td>ver</td> |
| <td><a href="CodeAsm/ver.html#VER" title="VE_VER">VER</a></td> |
| <td>( -- ) Tools<br>R( -- )<br>emits the version string</td> |
| </tr> |
| <tr> |
| <td>wdr</td> |
| <td><a href="CodeAsm/wdr.html#WDR" title="VE_WDR">WDR</a></td> |
| <td>( -- ) Interrupt<br>R( -- )<br>calls the MCU wdr instruction</td> |
| </tr> |
| <tr> |
| <td>while</td> |
| <td><a href="CodeAsm/while.html#WHILE" title="VE_WHILE">WHILE</a></td> |
| <td>( dest -- orig dest ) Control Structure<br>R( -- )<br>control structure</td> |
| </tr> |
| <tr> |
| <td>word</td> |
| <td><a href="CodeAsm/word.html#WORD" title="VE_WORD">WORD</a></td> |
| <td>( c -- addr ) Tools<br>R( -- )<br>skip leading delimiter characters and parses TIB to the next delimiter. copy the word into PAD</td> |
| </tr> |
| <tr> |
| <td>words</td> |
| <td><a href="CodeAsm/words.html#WORDS" title="VE_WORDS">WORDS</a></td> |
| <td>( -- ) Tools<br>R( -- )<br>emits a list of all (visible) words in the dictionary</td> |
| </tr> |
| <tr> |
| <td>words</td> |
| <td><a href="CodeAsm/words.html#WORDS" title="VE_WORDS">WORDS</a></td> |
| <td>( -- ) Tools<br>R( -- )<br>emits a list of all (visible) words in the dictionary</td> |
| </tr> |
| <tr> |
| <td>xor</td> |
| <td><a href="CodeAsm/xor.html#XOR" title="VE_XOR">XOR</a></td> |
| <td>( n1 n2 -- n3) Logic<br>R( -- )<br>exclusive or</td> |
| </tr> |
| </table> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.cs.ihtml" DO NOT REMOVE --> |
| <!-- ============== PATIČKA ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> Pro zobrazení (vložení) hlavičky je potřeba JavaScript </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |
| /Articles/Forth/HTML/WordList.en.html |
|---|
| 0,0 → 1,1251 |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
| <title> Forth amforth </title> |
| <meta name="keywords" content="amforth programming language Forth ATmega ATMEL"> |
| <meta name="description" content="amforth - laguage Forth for ATMEL ATmega"> |
| <!-- AUTOINCLUDE START "Page/Head.en.ihtml" DO NOT REMOVE --> |
| <link rel="StyleSheet" href="../../../Web/CSS/MLAB.css" type="text/css" title="MLAB Basic Style"> |
| <link rel="StyleSheet" href="../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
| <link rel="shortcut icon" type="image/x-icon" href="../../../Web/PIC/MLAB.ico"> |
| <script type="text/javascript" src="../../../Web/JS/MLAB_Menu.js"></script> |
| <!-- AUTOINCLUDE END --> |
| </head> |
| <body lang="en"> |
| <!-- AUTOINCLUDE START "Page/Header.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== HEADER ============== --> |
| <div class="Header"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../"); |
| DrawHeader(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the header </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- AUTOINCLUDE START "Page/Menu.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== MENU ============== --> |
| <div class="Menu"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../"); |
| DrawMenu(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the menu </b><p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| <!-- ============== TEXT ============== --> |
| <div class="Text"> |
| <p class="Title"> |
| amforth - Forth for ATmega |
| </p> |
| <p class="Subtitle"> |
| This page provides cross reference of the language amforth. The list is |
| automaticaly generated drectly from assemble source files. |
| </p> |
| <h1> Vesion </h1> |
| <table class="Compact"> |
| <tr> |
| <th colspan="2" class="center"> Basic information </th> |
| </tr> |
| <tr> |
| <td> amforth main page </td> |
| <td> <a href="http://amforth.sourceforge.net/">http://amforth.sourceforge.net/</a></td> |
| </tr> |
| <tr> |
| <td> amforth download page </td> |
| <td> <a href="http://sourceforge.net/projects/amforth">http://sourceforge.net/projects/amforth</a></td> |
| </tr> |
| <tr> |
| <td> Subversion server </td> |
| <td> <a href="https://amforth.svn.sourceforge.net/svnroot/amforth">https://amforth.svn.sourceforge.net/svnroot/amforth</a></td> |
| </tr> |
| <tr><th colspan="2">Subversion Info</th></tr><tr><td>URL</td><td> https://amforth.svn.sourceforge.net/svnroot/amforth/trunk</td></tr> |
| <tr><td>Repository Root</td><td> https://amforth.svn.sourceforge.net/svnroot/amforth</td></tr> |
| <tr><td>Repository UUID</td><td> 1be2a6a9-e81f-0410-9be0-e59bd151596a</td></tr> |
| <tr><td>Last Changed Author</td><td> mtrute</td></tr> |
| <tr><td>Last Changed Rev</td><td> 328</td></tr> |
| <tr><td>Last Changed Date</td><td> 2007-06-11 08:42:09 +0200 (Mon, 11 Jun 2007)</td></tr> |
| </table> |
| <!-- |
| <<ReadMe>> |
| --> |
| <h1> Vocabulary </h1> |
| <table> |
| <tr> |
| <th>Word</th> |
| <th>Label</th> |
| <th>Definition</th> |
| </tr> |
| <tr> |
| <td>!</td> |
| <td><a href="CodeAsm/store.html#STORE" title="VE_STORE">STORE</a></td> |
| <td>( n addr -- ) Memory<br>R( -- )<br>write 16bit to RAM memory (or IO or CPU registers)</td> |
| </tr> |
| <tr> |
| <td>#</td> |
| <td><a href="CodeAsm/sharp.html#SHARP" title="VE_SHARP">SHARP</a></td> |
| <td>( d1 -- d2) Numeric IO<br>R( -- )<br>compiles next digit to HLD</td> |
| </tr> |
| <tr> |
| <td>#></td> |
| <td><a href="CodeAsm/sharp_g.html#SHARP_G" title="VE_SHARP_G">SHARP_G</a></td> |
| <td>( d1 -- addr count ) Numeric IO<br>R( -- )<br>convert HLD buffer to a usable string</td> |
| </tr> |
| <tr> |
| <td>#int</td> |
| <td><a href="CodeAsm/intx.html#NUMINT" title="VE_NUMINT">NUMINT</a></td> |
| <td>( -- n ) Interrupt<br>R( -- )<br>number of interrupt vectors (0 based)</td> |
| </tr> |
| <tr> |
| <td>#s</td> |
| <td><a href="CodeAsm/sharp_s.html#SHARP_S" title="VE_SHARP_S">SHARP_S</a></td> |
| <td>( d1 -- 0) Numeric IO<br>R( -- )<br>call # until a value of zero is reached</td> |
| </tr> |
| <tr> |
| <td>#tib</td> |
| <td><a href="CodeAsm/sharptib.html#NUMBERTIB" title="VE_NUMBERTIB">NUMBERTIB</a></td> |
| <td>( -- addr ) System<br>R( -- )<br>address of variable holding the number of characters in TIB</td> |
| </tr> |
| <tr> |
| <td>'</td> |
| <td><a href="CodeAsm/tick.html#TICK" title="VE_TICK">TICK</a></td> |
| <td>( -- XT ) Dictionary<br>R( -- )<br>search dictionary, returns XT or throw an exception -13</td> |
| </tr> |
| <tr> |
| <td>(</td> |
| <td><a href="CodeAsm/lparenthesis.html#LPARENTHESIS" title="VE_LPARENTHESIS">LPARENTHESIS</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>skip everything up to the closing bracket on the same line</td> |
| </tr> |
| <tr> |
| <td>*</td> |
| <td><a href="CodeAsm/star.html#MUL" title="VE_MUL">MUL</a></td> |
| <td>( n1 n2 -- n3 ) Arithmetics<br>R( -- )<br>multiply routine</td> |
| </tr> |
| <tr> |
| <td>*/</td> |
| <td><a href="CodeAsm/starslash.html#STARSLASH" title="VE_STARSLASH">STARSLASH</a></td> |
| <td>(n1 n2 n3 -- n4) Arithmetics<br>R( -- )<br>signed multiply and division with double precision intermediate</td> |
| </tr> |
| <tr> |
| <td>*/mod</td> |
| <td><a href="CodeAsm/starslashmod.html#STARSLASHMOD" title="VE_STARSLASHMOD">STARSLASHMOD</a></td> |
| <td>( n1 n2 n3 -- rem quot) Arithmetics<br>R( -- )<br>signed multiply and division with double precision intermediate and remainder</td> |
| </tr> |
| <tr> |
| <td>+</td> |
| <td><a href="CodeAsm/plus.html#PLUS" title="VE_PLUS">PLUS</a></td> |
| <td>( n1 n2 -- n3) Arithmetics<br>R( -- )<br>addition</td> |
| </tr> |
| <tr> |
| <td>+!</td> |
| <td><a href="CodeAsm/plusstore.html#PLUSSTORE" title="VE_PLUSSTORE">PLUSSTORE</a></td> |
| <td>( n addr -- ) Arithmetics<br>R( -- )<br>add value to content of RAM address</td> |
| </tr> |
| <tr> |
| <td>+loop</td> |
| <td><a href="CodeAsm/plusloop.html#PLOOP" title="VE_PLOOP">PLOOP</a></td> |
| <td>( addr -- ) Control Structure<br>R( -- )<br>compile +loop and resolve branch</td> |
| </tr> |
| <tr> |
| <td>,</td> |
| <td><a href="CodeAsm/comma.html#COMMA" title="VE_COMMA">COMMA</a></td> |
| <td>( n -- ) Dictionary<br>R( -- )<br>compile 16 bit into flash at here.</td> |
| </tr> |
| <tr> |
| <td>-</td> |
| <td><a href="CodeAsm/minus.html#MINUS" title="VE_MINUS">MINUS</a></td> |
| <td>( n1 n2 -- n3 ) Arithmetics<br>R( -- )<br>subtract</td> |
| </tr> |
| <tr> |
| <td>.</td> |
| <td><a href="CodeAsm/dot.html#DOT" title="VE_DOT">DOT</a></td> |
| <td>( n -- ) Numeric IO<br>R( -- )<br>prints TOS in free number format</td> |
| </tr> |
| <tr> |
| <td>."</td> |
| <td><a href="CodeAsm/dotstring.html#DOTSTRING" title="VE_DOTSTRING">DOTSTRING</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>compiles string into dictionary to be typed at runtime</td> |
| </tr> |
| <tr> |
| <td>."</td> |
| <td><a href="CodeAsm/dotstring.html#DOTSTRING" title="VE_DOTSTRING">DOTSTRING</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>compiles string into dictionary to be typed at runtime</td> |
| </tr> |
| <tr> |
| <td>.s</td> |
| <td><a href="CodeAsm/dot-s.html#DOTS" title="VE_DOTS">DOTS</a></td> |
| <td>( -- ) Tools<br>R( -- )<br>stack dump</td> |
| </tr> |
| <tr> |
| <td>.s</td> |
| <td><a href="CodeAsm/dot-s.html#DOTS" title="VE_DOTS">DOTS</a></td> |
| <td>( -- ) Tools<br>R( -- )<br>stack dump</td> |
| </tr> |
| <tr> |
| <td>/</td> |
| <td><a href="CodeAsm/slash.html#SLASH" title="VE_SLASH">SLASH</a></td> |
| <td>( n1 n2 -- n3) Arithmetics<br>R( -- )<br>diviion</td> |
| </tr> |
| <tr> |
| <td>/int</td> |
| <td><a href="CodeAsm/intx.html#INTOFF" title="VE_INTOFF">INTOFF</a></td> |
| <td>( -- sreg ) Interrupt<br>R( -- )<br>turns off all interrupts and leaves SREG in TOS</td> |
| </tr> |
| <tr> |
| <td>/key</td> |
| <td><a href="CodeAsm/slashkey.html#SLASHKEY" title="VE_SLASHKEY">SLASHKEY</a></td> |
| <td>( -- f) Character IO<br>R( -- )<br>fetch 'key? vector and execute it if not zero. Leave true if a character can be read, false otherwise</td> |
| </tr> |
| <tr> |
| <td>/mod</td> |
| <td><a href="CodeAsm/slashmod.html#SLASHMOD" title="VE_SLASHMOD">SLASHMOD</a></td> |
| <td>( n1 n2 -- rem quot) Arithmetics<br>R( -- )<br>signed division n1/n2 with remainder</td> |
| </tr> |
| <tr> |
| <td>/string</td> |
| <td><a href="CodeAsm/slashstring.html#SLASHSTRING" title="VE_SLASHSTRING">SLASHSTRING</a></td> |
| <td>( addr1 u1 n-- addr2 u2 ) String<br>R( -- )<br>adjust string from addr1 to addr1+n, reduce length from u1 to u2</td> |
| </tr> |
| <tr> |
| <td>0</td> |
| <td><a href="CodeAsm/zero.html#ZERO" title="VE_ZERO">ZERO</a></td> |
| <td>( -- 0 ) Arithmetics<br>R( -- )<br>leaves the value 0 on TOS</td> |
| </tr> |
| <tr> |
| <td>0<</td> |
| <td><a href="CodeAsm/lesszero.html#LESSZERO" title="VE_LESSZERO">LESSZERO</a></td> |
| <td>( n1 -- flag) Compare<br>R( -- )<br>compare with zero</td> |
| </tr> |
| <tr> |
| <td>0<></td> |
| <td><a href="CodeAsm/notequalzero.html#NOTEQUALZERO" title="VE_NOTEQUALZERO">NOTEQUALZERO</a></td> |
| <td>( n -- flag ) Compare<br>R( -- )<br>compare with zero</td> |
| </tr> |
| <tr> |
| <td>0=</td> |
| <td><a href="CodeAsm/equalzero.html#EQUALZERO" title="VE_EQUALZERO">EQUALZERO</a></td> |
| <td>( n -- flag ) Compare<br>R( -- )<br>compare with 0 (zero)</td> |
| </tr> |
| <tr> |
| <td>0></td> |
| <td><a href="CodeAsm/greaterzero.html#GREATERZERO" title="VE_GREATERZERO">GREATERZERO</a></td> |
| <td>( n1 -- flag ) Compare<br>R( -- )<br>compare with zero</td> |
| </tr> |
| <tr> |
| <td>1+</td> |
| <td><a href="CodeAsm/1plus.html#1PLUS" title="VE_1PLUS">1PLUS</a></td> |
| <td>( n1 -- n2 ) Arithmetics<br>R( -- )<br>optimized increment</td> |
| </tr> |
| <tr> |
| <td>1-</td> |
| <td><a href="CodeAsm/1minus.html#1MINUS" title="VE_1MINUS">1MINUS</a></td> |
| <td>( n1 -- n2 ) Arithmetics<br>R( -- )<br>optimized decrement (CORE)</td> |
| </tr> |
| <tr> |
| <td>1ms</td> |
| <td><a href="CodeAsm/1ms.html#1MS" title="VE_1MS">1MS</a></td> |
| <td>( -- ) Time<br>R(--)<br>busy waits (almost) exactly 1 millisecond</td> |
| </tr> |
| <tr> |
| <td>2*</td> |
| <td><a href="CodeAsm/2star.html#2STAR" title="VE_2STAR">2STAR</a></td> |
| <td>( n1 -- n2 ) Arithmetics<br>R( -- )<br>arithmetic shift left</td> |
| </tr> |
| <tr> |
| <td>2/</td> |
| <td><a href="CodeAsm/2slash.html#2SLASH" title="VE_2SLASH">2SLASH</a></td> |
| <td>( n1 -- n2 ) Arithmetics<br>R( -- )<br>arithmetic shift right</td> |
| </tr> |
| <tr> |
| <td>:</td> |
| <td><a href="CodeAsm/colon.html#COLON" title="VE_COLON">COLON</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>create named entry in the dictionary</td> |
| </tr> |
| <tr> |
| <td>:noname</td> |
| <td><a href="CodeAsm/colon-noname.html#COLONNONAME" title="VE_COLONNONAME">COLONNONAME</a></td> |
| <td>( -- xt ) Compiler<br>R( -- )<br>create unnamed entry in the dictionary</td> |
| </tr> |
| <tr> |
| <td>;</td> |
| <td><a href="CodeAsm/semicolon.html#SEMICOLON" title="VE_SEMICOLON">SEMICOLON</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>finish colon defintion, compiles (exit) and returns to interpreter state</td> |
| </tr> |
| <tr> |
| <td><</td> |
| <td><a href="CodeAsm/less.html#LESS" title="VE_LESS">LESS</a></td> |
| <td>( n1 n2 -- flasg) Compare<br>R( -- )<br>compare two values</td> |
| </tr> |
| <tr> |
| <td><#</td> |
| <td><a href="CodeAsm/l_sharp.html#L_SHARP" title="VE_L_SHARP">L_SHARP</a></td> |
| <td>( -- ) Numeric IO<br>R( -- )<br>emties counted string at address from hld</td> |
| </tr> |
| <tr> |
| <td><></td> |
| <td><a href="CodeAsm/notequal.html#NOTEQUAL" title="VE_NOTEQUAL">NOTEQUAL</a></td> |
| <td>( n1 n2 -- flag) Compare<br>R( -- )<br>compare two values</td> |
| </tr> |
| <tr> |
| <td>=</td> |
| <td><a href="CodeAsm/equal.html#EQUAL" title="VE_EQUAL">EQUAL</a></td> |
| <td>( n1 n2 -- flag ) Compare<br>R( -- )<br>compares two values</td> |
| </tr> |
| <tr> |
| <td>></td> |
| <td><a href="CodeAsm/greater.html#GREATER" title="VE_GREATER">GREATER</a></td> |
| <td>( n1 n2 -- flag ) Compare<br>R( -- )<br>compares two values (signed)</td> |
| </tr> |
| <tr> |
| <td>><</td> |
| <td><a href="CodeAsm/byteswap.html#BYTESWAP" title="VE_BYTESWAP">BYTESWAP</a></td> |
| <td>( n1 -- n2 ) Arithmetics<br>R( -- )<br>swap the bytes of the TOS</td> |
| </tr> |
| <tr> |
| <td>>in</td> |
| <td><a href="CodeAsm/g_in.html#G_IN" title="VE_G_IN">G_IN</a></td> |
| <td>( -- addr ) System<br>R( -- )<br>pointer to current read position in TIB</td> |
| </tr> |
| <tr> |
| <td>>r</td> |
| <td><a href="CodeAsm/to_r.html#TO_R" title="VE_TO_R">TO_R</a></td> |
| <td>( n -- ) Stack<br>R( -- n)<br>move TOS to TOR</td> |
| </tr> |
| <tr> |
| <td>?do</td> |
| <td><a href="CodeAsm/qdo.html#QDO" title="VE_QDO">QDO</a></td> |
| <td>( -- addr ) Control Structure<br>R( -- )<br>start do .. [+]loop</td> |
| </tr> |
| <tr> |
| <td>?do</td> |
| <td><a href="CodeAsm/qdo.html#QDO" title="VE_QDO">QDO</a></td> |
| <td>( -- addr ) Control Structure<br>R( -- )<br>start do .. [+]loop</td> |
| </tr> |
| <tr> |
| <td>?dup</td> |
| <td><a href="CodeAsm/qdup.html#QDUP" title="VE_QDUP">QDUP</a></td> |
| <td>( n1 -- [ n1 n1 ] | 0) Stack<br>R( -- )<br>duplicate TOS if non-zero</td> |
| </tr> |
| <tr> |
| <td>@</td> |
| <td><a href="CodeAsm/fetch.html#FETCH" title="VE_FETCH">FETCH</a></td> |
| <td>( addr -- n ) Memory<br>R( -- )<br>read 1 cell from RAM (or IO or CPU register)</td> |
| </tr> |
| <tr> |
| <td>Edefer</td> |
| <td><a href="CodeAsm/edefer.html#EDEFER" title="VE_EDEFER">EDEFER</a></td> |
| <td>( n <name> -- ) Compiler<br>R( -- )<br>creates a defer vector which is kept in eeprom.</td> |
| </tr> |
| <tr> |
| <td>Edefer</td> |
| <td><a href="CodeAsm/edefer.html#EDEFER" title="VE_EDEFER">EDEFER</a></td> |
| <td>( n <name> -- ) Compiler<br>R( -- )<br>creates a defer vector which is kept in eeprom.</td> |
| </tr> |
| <tr> |
| <td>Rdefer</td> |
| <td><a href="CodeAsm/rdefer.html#RDEFER" title="VE_RDEFER">RDEFER</a></td> |
| <td>( n <name> -- ) Compiler<br>R( -- )<br>creates a RAM based defer vector</td> |
| </tr> |
| <tr> |
| <td>Rdefer</td> |
| <td><a href="CodeAsm/rdefer.html#RDEFER" title="VE_RDEFER">RDEFER</a></td> |
| <td>( n <name> -- ) Compiler<br>R( -- )<br>creates a RAM based defer vector</td> |
| </tr> |
| <tr> |
| <td>[</td> |
| <td><a href="CodeAsm/leftbracket.html#LBRACKET" title="VE_LBRACKET">LBRACKET</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>put system to interpreter state</td> |
| </tr> |
| <tr> |
| <td>[']</td> |
| <td><a href="CodeAsm/brackettick.html#BRACKETTICK" title="VE_BRACKETTICK">BRACKETTICK</a></td> |
| <td>( -- XT ) Compiler<br>R( -- )<br>what does ' in the interpreter mode do in colon definitions</td> |
| </tr> |
| <tr> |
| <td>\</td> |
| <td><a href="CodeAsm/backslash.html#BACKSLASH" title="VE_BACKSLASH">BACKSLASH</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>everything up to the end of the current line is a comment</td> |
| </tr> |
| <tr> |
| <td>]</td> |
| <td><a href="CodeAsm/rightbracket.html#RBRACKET" title="VE_RBRACKET">RBRACKET</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>turn on compiler</td> |
| </tr> |
| <tr> |
| <td>abort</td> |
| <td><a href="CodeAsm/abort.html#ABORT" title="VE_ABORT">ABORT</a></td> |
| <td>( n*x -- ) Exceptions<br>R( n*y -- )<br>send an exception -1</td> |
| </tr> |
| <tr> |
| <td>abort"</td> |
| <td><a href="CodeAsm/abortstring.html#ABORTSTRING" title="VE_ABORTSTRING">ABORTSTRING</a></td> |
| <td>( n*x -- ) Exceptions<br>R( n*y -- )<br>check flag. If true emit some text and throw exception -2</td> |
| </tr> |
| <tr> |
| <td>abort"</td> |
| <td><a href="CodeAsm/abortstring.html#ABORTSTRING" title="VE_ABORTSTRING">ABORTSTRING</a></td> |
| <td>( n*x -- ) Exceptions<br>R( n*y -- )<br>check flag. If true emit some text and throw exception -2</td> |
| </tr> |
| <tr> |
| <td>abs</td> |
| <td><a href="CodeAsm/abs.html#ABS" title="VE_ABS">ABS</a></td> |
| <td>( n1 -- u1 ) Arithmetics<br>R( -- )<br>get the absolute value</td> |
| </tr> |
| <tr> |
| <td>accept</td> |
| <td><a href="CodeAsm/accept.html#ACCEPT" title="VE_ACCEPT">ACCEPT</a></td> |
| <td>( addr n1 -- n2 ) System<br>R( -- )<br>reads a line with with KEY into addr until n2 characters are reveived or cr/lf detected.</td> |
| </tr> |
| <tr> |
| <td>again</td> |
| <td><a href="CodeAsm/again.html#AGAIN" title="VE_AGAIN">AGAIN</a></td> |
| <td>( addr -- ) Control Structure<br>R( -- )<br>go back to begin</td> |
| </tr> |
| <tr> |
| <td>allot</td> |
| <td><a href="CodeAsm/allot.html#ALLOT" title="VE_ALLOT">ALLOT</a></td> |
| <td>( n -- ) System<br>R( -- )<br>allocate memory in RAM</td> |
| </tr> |
| <tr> |
| <td>and</td> |
| <td><a href="CodeAsm/and.html#AND" title="VE_AND">AND</a></td> |
| <td>( n1 n2 -- n3 ) Logic<br>R( -- )<br>bitwise and</td> |
| </tr> |
| <tr> |
| <td>base</td> |
| <td><a href="CodeAsm/base.html#BASE" title="VE_BASE">BASE</a></td> |
| <td>( -- addr ) Numeric IO<br>R( -- )<br>base fo numeric IO</td> |
| </tr> |
| <tr> |
| <td>baud0</td> |
| <td><a href="CodeAsm/usart.html#BAUD0" title="VE_BAUD0">BAUD0</a></td> |
| <td>( -- v) System Value<br>R( -- )<br>returns usart0 baudrate</td> |
| </tr> |
| <tr> |
| <td>begin</td> |
| <td><a href="CodeAsm/begin.html#BEGIN" title="VE_BEGIN">BEGIN</a></td> |
| <td>( -- addr ) Control Structure<br>R( -- )<br>start a control structture</td> |
| </tr> |
| <tr> |
| <td>bl</td> |
| <td><a href="CodeAsm/bl.html#BL" title="VE_BL">BL</a></td> |
| <td>( -- 32 ) Character IO<br>R( -- )<br>put ascii code of the blank to the stack</td> |
| </tr> |
| <tr> |
| <td>c!</td> |
| <td><a href="CodeAsm/cstore.html#CSTORE" title="VE_CSTORE">CSTORE</a></td> |
| <td>( c addr -- ) Memory<br>R( -- )<br>store a byte to RAM address</td> |
| </tr> |
| <tr> |
| <td>c@</td> |
| <td><a href="CodeAsm/cfetch.html#CFETCH" title="VE_CFETCH">CFETCH</a></td> |
| <td>( addr - c1 ) Memory<br>R( -- )<br>fetch a single byte from RAM (or IO or CPU register)</td> |
| </tr> |
| <tr> |
| <td>case</td> |
| <td><a href="CodeAsm/case.html#CASE" title="VE_CASE">CASE</a></td> |
| <td>( -- 0 ) Control Structure<br>R( -- )</td> |
| </tr> |
| <tr> |
| <td>case</td> |
| <td><a href="CodeAsm/case.html#CASE" title="VE_CASE">CASE</a></td> |
| <td>( -- 0 ) Control Structure<br>R( -- )</td> |
| </tr> |
| <tr> |
| <td>catch</td> |
| <td><a href="CodeAsm/catch.html#CATCH" title="VE_CATCH">CATCH</a></td> |
| <td>( xt -- ) Exceptions<br>R( -- ) or R( ny -- )<br>execute the XT and restore stack frame if an exception is thrown</td> |
| </tr> |
| <tr> |
| <td>char</td> |
| <td><a href="CodeAsm/char.html#CHAR" title="VE_CHAR">CHAR</a></td> |
| <td>( -- c ) Tools<br>R( -- )<br>first character of the next word</td> |
| </tr> |
| <tr> |
| <td>cmove></td> |
| <td><a href="CodeAsm/cmove_g.html#CMOVE_G" title="VE_CMOVE_G">CMOVE_G</a></td> |
| <td>(addr-from addr-to n -- ) Memory<br>R( -- )<br>copy data in RAM</td> |
| </tr> |
| <tr> |
| <td>cold</td> |
| <td><a href="CodeAsm/cold.html#COLD" title="VE_COLD">COLD</a></td> |
| <td>( -- ) System<br>R( -- )<br>main entry word. executes turnkey operation and executes quit</td> |
| </tr> |
| <tr> |
| <td>compile</td> |
| <td><a href="CodeAsm/compile.html#COMPILE" title="VE_COMPILE">COMPILE</a></td> |
| <td>( -- ) Dictionary<br>R( -- )<br>copy the next flash cell to HERE</td> |
| </tr> |
| <tr> |
| <td>constant</td> |
| <td><a href="CodeAsm/constant.html#CONSTANT" title="VE_CONSTANT">CONSTANT</a></td> |
| <td>( n -- ) Compiler<br>R( -- )<br>create a named constant</td> |
| </tr> |
| <tr> |
| <td>count</td> |
| <td><a href="CodeAsm/count.html#COUNT" title="VE_COUNT">COUNT</a></td> |
| <td>( addr -- addr+1 n) String<br>R( -- )<br>addr is the address of a counted string in RAM</td> |
| </tr> |
| <tr> |
| <td>cr</td> |
| <td><a href="CodeAsm/cr.html#CR" title="VE_CR">CR</a></td> |
| <td>( -- ) Character IO<br>R( -- )<br>emits CR/LF</td> |
| </tr> |
| <tr> |
| <td>create</td> |
| <td><a href="CodeAsm/create.html#CREATE" title="VE_CREATE">CREATE</a></td> |
| <td>( -- ) Dictionary<br>R( -- )<br>create a complete dictionary header.</td> |
| </tr> |
| <tr> |
| <td>cscan</td> |
| <td><a href="CodeAsm/char-scan.html#CSCAN" title="VE_CSCAN">CSCAN</a></td> |
| <td>( addr1 n1 c -- addr1 n2 ) String<br>R( -- )<br>Scan string at addr1/n1 until first c, leaving addr1/n2, char at n2 is last non-c character</td> |
| </tr> |
| <tr> |
| <td>cskip</td> |
| <td><a href="CodeAsm/char-skip.html#CSKIP" title="VE_CSKIP">CSKIP</a></td> |
| <td>( addr1 n1 c -- addr2 n2 ) String<br>R( -- )<br>skips leading occurancies in string at addr1/n1 leaving addr2/n2 pointing to the 1st non-c character</td> |
| </tr> |
| <tr> |
| <td>d+</td> |
| <td><a href="CodeAsm/d-plus.html#DPLUS" title="VE_DPLUS">DPLUS</a></td> |
| <td>( d1 d2 -- d3) Arithmetics<br>R( -- )<br>add double cell values</td> |
| </tr> |
| <tr> |
| <td>d+</td> |
| <td><a href="CodeAsm/d-plus.html#DPLUS" title="VE_DPLUS">DPLUS</a></td> |
| <td>( d1 d2 -- d3) Arithmetics<br>R( -- )<br>add double cell values</td> |
| </tr> |
| <tr> |
| <td>d-</td> |
| <td><a href="CodeAsm/d-minus.html#DMINUS" title="VE_DMINUS">DMINUS</a></td> |
| <td>( d1 d2 -- d3 ) Arithmetics<br>R( -- )<br>subtract double cell values</td> |
| </tr> |
| <tr> |
| <td>d-</td> |
| <td><a href="CodeAsm/d-minus.html#DMINUS" title="VE_DMINUS">DMINUS</a></td> |
| <td>( d1 d2 -- d3 ) Arithmetics<br>R( -- )<br>subtract double cell values</td> |
| </tr> |
| <tr> |
| <td>d2*</td> |
| <td><a href="CodeAsm/d-2star.html#D2STAR" title="VE_D2STAR">D2STAR</a></td> |
| <td>( d1 -- d2 ) Arithmetics<br>R( -- )<br>shift a double cell left</td> |
| </tr> |
| <tr> |
| <td>d2*</td> |
| <td><a href="CodeAsm/d-2star.html#D2STAR" title="VE_D2STAR">D2STAR</a></td> |
| <td>( d1 -- d2 ) Arithmetics<br>R( -- )<br>shift a double cell left</td> |
| </tr> |
| <tr> |
| <td>d2/</td> |
| <td><a href="CodeAsm/d-2slash.html#D2SLASH" title="VE_D2SLASH">D2SLASH</a></td> |
| <td>( d1 -- d2 ) Arithmetics<br>R( -- )<br>shift a double cell value right</td> |
| </tr> |
| <tr> |
| <td>d<</td> |
| <td><a href="CodeAsm/d-less.html#DLESS" title="VE_DLESS">DLESS</a></td> |
| <td>( d1 d2 -- flasg) Compare<br>R( -- )<br>compare two values</td> |
| </tr> |
| <tr> |
| <td>d></td> |
| <td><a href="CodeAsm/d-greater.html#DGREATER" title="VE_DGREATER">DGREATER</a></td> |
| <td>( d1 d2 -- flag ) Compare<br>R( -- )<br>compares two values (signed)</td> |
| </tr> |
| <tr> |
| <td>d>s</td> |
| <td><a href="CodeAsm/d_to_s.html#D2S" title="VE_D2S">D2S</a></td> |
| <td>( d1 -- n1 ) Conversion<br>R( -- )<br>shrink double cell value to single cell.</td> |
| </tr> |
| <tr> |
| <td>decimal</td> |
| <td><a href="CodeAsm/decimal.html#DECIMAL" title="VE_DECIMAL">DECIMAL</a></td> |
| <td>( -- ) Numeric IO<br>R( -- )<br>set base to 10 (decimal)</td> |
| </tr> |
| <tr> |
| <td>defer!</td> |
| <td><a href="CodeAsm/defer-store.html#DEFERSTORE" title="VE_DEFERSTORE">DEFERSTORE</a></td> |
| <td>( xt1 xt2 -- ) System<br>R( -- )<br>stores xt1 as the xt to be executed when xt2 is called</td> |
| </tr> |
| <tr> |
| <td>defer@</td> |
| <td><a href="CodeAsm/defer-fetch.html#DEFERFETCH" title="VE_DEFERFETCH">DEFERFETCH</a></td> |
| <td>( xt1 -- xt2 ) System<br>R( -- )<br>returns the XT assoziates with the given XT</td> |
| </tr> |
| <tr> |
| <td>depth</td> |
| <td><a href="CodeAsm/depth.html#DEPTH" title="VE_DEPTH">DEPTH</a></td> |
| <td>( -- n ) Stack<br>R( -- )<br>currently used data stack size in cells</td> |
| </tr> |
| <tr> |
| <td>digit</td> |
| <td><a href="CodeAsm/digit.html#DIGIT" title="VE_DIGIT">DIGIT</a></td> |
| <td>( c base -- number flag ) Numeric IO<br>R( -- )<br>convert character to number, set flag if successful</td> |
| </tr> |
| <tr> |
| <td>dinvert</td> |
| <td><a href="CodeAsm/d-invert.html#DINVERT" title="VE_DINVERT">DINVERT</a></td> |
| <td>( d1 -- d2) Arithmetics<br>R( -- )<br>flip all bits in the double cell value</td> |
| </tr> |
| <tr> |
| <td>dinvert</td> |
| <td><a href="CodeAsm/d-invert.html#DINVERT" title="VE_DINVERT">DINVERT</a></td> |
| <td>( d1 -- d2) Arithmetics<br>R( -- )<br>flip all bits in the double cell value</td> |
| </tr> |
| <tr> |
| <td>do</td> |
| <td><a href="CodeAsm/do.html#DO" title="VE_DO">DO</a></td> |
| <td>( -- addr ) Control Structure<br>R( -- )<br>start do .. [+]loop</td> |
| </tr> |
| <tr> |
| <td>does></td> |
| <td><a href="CodeAsm/does.html#DOES" title="VE_DOES">DOES</a></td> |
| <td>( -- ) Compiler<br>R( -- )</td> |
| </tr> |
| <tr> |
| <td>dp</td> |
| <td><a href="CodeAsm/dp.html#DP" title="VE_DP">DP</a></td> |
| <td>( -- eaddr) System Pointer<br>R( -- )<br>first unused address in flash (NRWW is always used)</td> |
| </tr> |
| <tr> |
| <td>drop</td> |
| <td><a href="CodeAsm/drop.html#DROP" title="VE_DROP">DROP</a></td> |
| <td>( n -- ) Stack<br>R( -- )<br>drop TOS</td> |
| </tr> |
| <tr> |
| <td>dup</td> |
| <td><a href="CodeAsm/dup.html#DUP" title="VE_DUP">DUP</a></td> |
| <td>( n -- n n ) Stack<br>R( -- )<br>duplicate TOS</td> |
| </tr> |
| <tr> |
| <td>e!</td> |
| <td><a href="CodeAsm/estore.html#ESTORE" title="VE_ESTORE">ESTORE</a></td> |
| <td>( n addr -- ) Memory<br>R( -- )<br>write to eeprom address</td> |
| </tr> |
| <tr> |
| <td>e@</td> |
| <td><a href="CodeAsm/efetch.html#EFETCH" title="VE_EFETCH">EFETCH</a></td> |
| <td>( addr - n) Memory<br>R( -- )<br>read 2 bytes from eeprom</td> |
| </tr> |
| <tr> |
| <td>edp</td> |
| <td><a href="CodeAsm/edp.html#EDP" title="VE_EDP">EDP</a></td> |
| <td>( -- eaddr) System Pointer<br>R( -- )<br>first unused address in eeprom</td> |
| </tr> |
| <tr> |
| <td>else</td> |
| <td><a href="CodeAsm/else.html#ELSE" title="VE_ELSE">ELSE</a></td> |
| <td>( addr1 -- addr2) Compiler<br>R( -- )</td> |
| </tr> |
| <tr> |
| <td>emit</td> |
| <td><a href="CodeAsm/emit.html#EMIT" title="VE_EMIT">EMIT</a></td> |
| <td>( -- eaddr) Character IO<br>R( -- )<br>fetch the emit vector and execute it</td> |
| </tr> |
| <tr> |
| <td>emit?</td> |
| <td><a href="CodeAsm/emitq.html#EMITQ" title="VE_EMITQ">EMITQ</a></td> |
| <td>( -- c) Character IO<br>R( -- )<br>fetch emit? vector and execute it</td> |
| </tr> |
| <tr> |
| <td>endcase</td> |
| <td><a href="CodeAsm/endcase.html#ENDCASE" title="VE_ENDCASE">ENDCASE</a></td> |
| <td>( f -- ) Compiler<br>R( -- )</td> |
| </tr> |
| <tr> |
| <td>endcase</td> |
| <td><a href="CodeAsm/endcase.html#ENDCASE" title="VE_ENDCASE">ENDCASE</a></td> |
| <td>( f -- ) Compiler<br>R( -- )</td> |
| </tr> |
| <tr> |
| <td>endof</td> |
| <td><a href="CodeAsm/endof.html#ENDOF" title="VE_ENDOF">ENDOF</a></td> |
| <td>( addr1 -- addr2 ) Compiler<br>R( -- )</td> |
| </tr> |
| <tr> |
| <td>endof</td> |
| <td><a href="CodeAsm/endof.html#ENDOF" title="VE_ENDOF">ENDOF</a></td> |
| <td>( addr1 -- addr2 ) Compiler<br>R( -- )</td> |
| </tr> |
| <tr> |
| <td>execute</td> |
| <td><a href="CodeAsm/execute.html#EXECUTE" title="VE_EXECUTE">EXECUTE</a></td> |
| <td>( xt -- ) System<br>R( -- )<br>execute XT</td> |
| </tr> |
| <tr> |
| <td>exit</td> |
| <td><a href="CodeAsm/exit.html#EXIT" title="VE_EXIT">EXIT</a></td> |
| <td>( -- ) Compiler<br>R( xt -- )<br>end of current colon word</td> |
| </tr> |
| <tr> |
| <td>f_cpu</td> |
| <td><a href="CodeAsm/f_cpu.html#F_CPU" title="VE_F_CPU">F_CPU</a></td> |
| <td>( -- f_cou ) System<br>R( -- )<br>put the cpu frequency on stack</td> |
| </tr> |
| <tr> |
| <td>find</td> |
| <td><a href="CodeAsm/find.html#FIND" title="VE_FIND">FIND</a></td> |
| <td>( addr -- -- [ addr 0 ] | [ xt [-1|1]] ) Tools<br>R( -- )<br>search dictionary</td> |
| </tr> |
| <tr> |
| <td>handler</td> |
| <td><a href="CodeAsm/handler.html#HANDLER" title="VE_HANDLER">HANDLER</a></td> |
| <td>( -- addr ) Exceptions<br>R( -- )<br>used by catch/throw</td> |
| </tr> |
| <tr> |
| <td>heap</td> |
| <td><a href="CodeAsm/heap.html#HEAP" title="VE_HEAP">HEAP</a></td> |
| <td>( -- eaddr) System Pointer<br>R( -- )<br> address of first unallocated RAM</td> |
| </tr> |
| <tr> |
| <td>here</td> |
| <td><a href="CodeAsm/here.html#HERE" title="VE_HERE">HERE</a></td> |
| <td>( -- addr ) System Pointer<br>R( -- )</td> |
| </tr> |
| <tr> |
| <td>hex</td> |
| <td><a href="CodeAsm/hex.html#HEX" title="VE_HEX">HEX</a></td> |
| <td>( -- ) Numeric IO<br>R( -- )<br>set base to 16 (decimal)</td> |
| </tr> |
| <tr> |
| <td>hld</td> |
| <td><a href="CodeAsm/hld.html#HLD" title="VE_HLD">HLD</a></td> |
| <td>( -- addr ) Numeric IO<br>R( -- )<br>address of buffer for pictured numeric output</td> |
| </tr> |
| <tr> |
| <td>hold</td> |
| <td><a href="CodeAsm/hold.html#HOLD" title="VE_HOLD">HOLD</a></td> |
| <td>( c -- ) Numeric IO<br>R( -- )<br>prepend character to pictured numeric output buffer</td> |
| </tr> |
| <tr> |
| <td>i</td> |
| <td><a href="CodeAsm/i.html#I" title="VE_I">I</a></td> |
| <td>( -- n ) Control Structure<br>R( loop-sys -- loop-sys)<br>current loop counter</td> |
| </tr> |
| <tr> |
| <td>i!</td> |
| <td><a href="CodeAsm/istore.html#ISTORE" title="VE_ISTORE">ISTORE</a></td> |
| <td>( n addr -- ) Memory<br>R( -- )<br>writes a cell in flash</td> |
| </tr> |
| <tr> |
| <td>i@</td> |
| <td><a href="CodeAsm/ifetch.html#IFETCH" title="VE_IFETCH">IFETCH</a></td> |
| <td>( addr -- n1 ) Memory<br>R( -- )<br>reads a cell from flash, addr is cell address, not byte addres first byte gets into the lower word on tos</td> |
| </tr> |
| <tr> |
| <td>icount</td> |
| <td><a href="CodeAsm/icount.html#ICOUNT" title="VE_ICOUNT">ICOUNT</a></td> |
| <td>( adr -- adr n ) Tools<br>R( -- )<br>get count byte out of packed counted string in flash</td> |
| </tr> |
| <tr> |
| <td>idump</td> |
| <td><a href="CodeAsm/idump.html#IDUMP" title="VE_IDUMP">IDUMP</a></td> |
| <td>( addr len -- ) Tools<br>R( -- )<br>dumps flash memory beginning with address addr and len cells long</td> |
| </tr> |
| <tr> |
| <td>idump</td> |
| <td><a href="CodeAsm/idump.html#IDUMP" title="VE_IDUMP">IDUMP</a></td> |
| <td>( addr len -- ) Tools<br>R( -- )<br>dumps flash memory beginning with address addr and len cells long</td> |
| </tr> |
| <tr> |
| <td>if</td> |
| <td><a href="CodeAsm/if.html#IF" title="VE_IF">IF</a></td> |
| <td>( -- addr ) Control Structure<br>R( -- )<br>start conditional branch</td> |
| </tr> |
| <tr> |
| <td>immediate</td> |
| <td><a href="CodeAsm/immediate.html#IMMEDIATE" title="VE_IMMEDIATE">IMMEDIATE</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>set immediate flag</td> |
| </tr> |
| <tr> |
| <td>int</td> |
| <td><a href="CodeAsm/intx.html#INTON" title="VE_INTON">INTON</a></td> |
| <td>( -- ) Interrupt<br>R( -- )<br>turns on all interrupts</td> |
| </tr> |
| <tr> |
| <td>int!</td> |
| <td><a href="CodeAsm/intx.html#INTSTORE" title="VE_INTSTORE">INTSTORE</a></td> |
| <td>( xt i -- ) Interrupt<br>R( -- )<br>stores XT as interrupt vector i</td> |
| </tr> |
| <tr> |
| <td>int@</td> |
| <td><a href="CodeAsm/intx.html#INTFETCH" title="VE_INTFETCH">INTFETCH</a></td> |
| <td>( i -- xt ) Interrupt<br>R( -- )<br>fetches XT from interrupt vector i</td> |
| </tr> |
| <tr> |
| <td>interpret</td> |
| <td><a href="CodeAsm/interpret.html#INTERPRET" title="VE_INTERPRET">INTERPRET</a></td> |
| <td>( -- ) System<br>R(i*x - j*x )<br>interpret input word by word. may throw exceptions</td> |
| </tr> |
| <tr> |
| <td>invert</td> |
| <td><a href="CodeAsm/invert.html#INVERT" title="VE_INVERT">INVERT</a></td> |
| <td>( n1 -- n2) Arithmetics<br>R( -- )<br>1-complement of TOS</td> |
| </tr> |
| <tr> |
| <td>is</td> |
| <td><a href="CodeAsm/is.html#IS" title="VE_IS">IS</a></td> |
| <td>( xt1 c<char> -- ) System<br>R( --)<br>stores xt into defer or compiles code to do so at runtime</td> |
| </tr> |
| <tr> |
| <td>is</td> |
| <td><a href="CodeAsm/is.html#IS" title="VE_IS">IS</a></td> |
| <td>( xt1 c<char> -- ) System<br>R( --)<br>stores xt into defer or compiles code to do so at runtime</td> |
| </tr> |
| <tr> |
| <td>itype</td> |
| <td><a href="CodeAsm/itype.html#ITYPE" title="VE_ITYPE">ITYPE</a></td> |
| <td>( addr n -- ) Tools<br>R( -- )<br>reads packed string from flash and emit it</td> |
| </tr> |
| <tr> |
| <td>j</td> |
| <td><a href="CodeAsm/j.html#J" title="VE_J">J</a></td> |
| <td>( -- n ) Control Structure<br>R( loop-sys1 loop-sys2 -- loop-sys1 loop-sys2)<br>loop counter of outer loop</td> |
| </tr> |
| <tr> |
| <td>key</td> |
| <td><a href="CodeAsm/key.html#KEY" title="VE_KEY">KEY</a></td> |
| <td>( -- c ) Character IO<br>R( -- )<br>fetch key vector and execute it</td> |
| </tr> |
| <tr> |
| <td>key?</td> |
| <td><a href="CodeAsm/keyq.html#KEYQ" title="VE_KEYQ">KEYQ</a></td> |
| <td>( -- f) Character IO<br>R( -- )<br>fetch 'key? vector and execute it. Leave true if a character can be read, false otherwise</td> |
| </tr> |
| <tr> |
| <td>leave</td> |
| <td><a href="CodeAsm/leave.html#LEAVE" title="VE_LEAVE">LEAVE</a></td> |
| <td>( -- )<br>R(next limit counter -- next )<br>runtime of leave</td> |
| </tr> |
| <tr> |
| <td>leave</td> |
| <td><a href="CodeAsm/leave.html#LEAVE" title="VE_LEAVE">LEAVE</a></td> |
| <td>( -- )<br>R(next limit counter -- next )<br>runtime of leave</td> |
| </tr> |
| <tr> |
| <td>literal</td> |
| <td><a href="CodeAsm/literal.html#LITERAL" title="VE_LITERAL">LITERAL</a></td> |
| <td>( n -- ) Compiler<br>R( -- )<br>compile a literal in colon defintions</td> |
| </tr> |
| <tr> |
| <td>log2</td> |
| <td><a href="CodeAsm/log2.html#LOG2" title="VE_LOG2">LOG2</a></td> |
| <td>( n1 -- n2 ) Arithmetics<br>R( -- )<br>logarithm base 2 or highest set bitnumber</td> |
| </tr> |
| <tr> |
| <td>loop</td> |
| <td><a href="CodeAsm/loop.html#LOOP" title="VE_LOOP">LOOP</a></td> |
| <td>( addr -- ) Control Structure<br>R( -- )<br>cpmpile (loop) and resolve branch</td> |
| </tr> |
| <tr> |
| <td>lshift</td> |
| <td><a href="CodeAsm/lshift.html#LSHIFT" title="VE_LSHIFT">LSHIFT</a></td> |
| <td>( n1 n2 -- n3) Arithmetics<br>R( -- )<br>logical shift left</td> |
| </tr> |
| <tr> |
| <td>m*</td> |
| <td><a href="CodeAsm/mstar.html#MSTAR" title="VE_MSTAR">MSTAR</a></td> |
| <td>( n1 n2 -- d) Arithmetics<br>R( -- )<br>multiply 2 cells to a double cell</td> |
| </tr> |
| <tr> |
| <td>max</td> |
| <td><a href="CodeAsm/max.html#MAX" title="VE_MAX">MAX</a></td> |
| <td>( n1 n2 -- n1|n2 ) Compare<br>R( -- )<br>compare two values, leave the bigger one</td> |
| </tr> |
| <tr> |
| <td>min</td> |
| <td><a href="CodeAsm/min.html#MIN" title="VE_MIN">MIN</a></td> |
| <td>( n1 n2 -- n1|n2 ) Compare<br>R( -- )<br>compare two values leave the smaller one</td> |
| </tr> |
| <tr> |
| <td>mod</td> |
| <td><a href="CodeAsm/mod.html#MOD" title="VE_MOD">MOD</a></td> |
| <td>( n1 n2 -- n3) Arithmetics<br>R( -- )<br>remainder of division</td> |
| </tr> |
| <tr> |
| <td>negate</td> |
| <td><a href="CodeAsm/negate.html#NEGATE" title="VE_NEGATE">NEGATE</a></td> |
| <td>( n1 -- n2 ) Logic<br>R( -- )<br>2-complement</td> |
| </tr> |
| <tr> |
| <td>noop</td> |
| <td><a href="CodeAsm/noop.html#NOOP" title="VE_NOOP">NOOP</a></td> |
| <td>( -- ) Tools<br>R( -- )<br>do nothing</td> |
| </tr> |
| <tr> |
| <td>not</td> |
| <td><a href="CodeAsm/not.html#NOT" title="VE_NOT">NOT</a></td> |
| <td>( flag -- flag' ) Logic<br>R( -- )<br>identical to 0=</td> |
| </tr> |
| <tr> |
| <td>number</td> |
| <td><a href="CodeAsm/number.html#NUMBER" title="VE_NUMBER">NUMBER</a></td> |
| <td>(addr -- n ) Numeric IO<br>R( -- )<br>convert a word to a number, throw exception -1 on error</td> |
| </tr> |
| <tr> |
| <td>of</td> |
| <td><a href="CodeAsm/of.html#OF" title="VE_OF">OF</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>see case</td> |
| </tr> |
| <tr> |
| <td>of</td> |
| <td><a href="CodeAsm/of.html#OF" title="VE_OF">OF</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>see case</td> |
| </tr> |
| <tr> |
| <td>or</td> |
| <td><a href="CodeAsm/or.html#OR" title="VE_OR">OR</a></td> |
| <td>( n1 n2 -- n3 ) Logic<br>R( -- )<br>logical or</td> |
| </tr> |
| <tr> |
| <td>over</td> |
| <td><a href="CodeAsm/over.html#OVER" title="VE_OVER">OVER</a></td> |
| <td>( n1 n2 -- n1 n2 n1 ) Stack<br>R( -- )<br>stack manipulation</td> |
| </tr> |
| <tr> |
| <td>pad</td> |
| <td><a href="CodeAsm/pad.html#PAD" title="VE_PAD">PAD</a></td> |
| <td>( -- addr ) System Pointer<br>R( -- )<br>scratch buffer.</td> |
| </tr> |
| <tr> |
| <td>parse</td> |
| <td><a href="CodeAsm/parse.html#PARSE" title="VE_PARSE">PARSE</a></td> |
| <td>( char "ccc" -- c-addr u ) String<br>R( -- )<br>in input buffer parse ccc delimited string by the delimiter char.</td> |
| </tr> |
| <tr> |
| <td>pause</td> |
| <td><a href="CodeAsm/pause.html#PAUSE" title="VE_PAUSE">PAUSE</a></td> |
| <td>( -- ) Multitasking<br>R( -- )<br>fetch pause vector and execute it. may make a context/task switch</td> |
| </tr> |
| <tr> |
| <td>quit</td> |
| <td><a href="CodeAsm/quit.html#QUIT" title="VE_QUIT">QUIT</a></td> |
| <td>( -- ) System<br>R( -- )<br>main loop of amforth. accept - interpret in an endless loop</td> |
| </tr> |
| <tr> |
| <td>r></td> |
| <td><a href="CodeAsm/r_from.html#R_FROM" title="VE_R_FROM">R_FROM</a></td> |
| <td>( -- n ) Stack<br>R( n --)<br>move TOR to TOS</td> |
| </tr> |
| <tr> |
| <td>r@</td> |
| <td><a href="CodeAsm/r_fetch.html#R_FETCH" title="VE_R_FETCH">R_FETCH</a></td> |
| <td>( -- n) Stack<br>R( n -- n )<br>fetch content of TOR</td> |
| </tr> |
| <tr> |
| <td>recurse</td> |
| <td><a href="CodeAsm/recurse.html#RECURSE" title="VE_RECURSE">RECURSE</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>compile XT of the word beeing currently defined into dictionary (! not conforming to ANS!)</td> |
| </tr> |
| <tr> |
| <td>refill</td> |
| <td><a href="CodeAsm/refill.html#REFILL" title="VE_REFILL">REFILL</a></td> |
| <td>( -- f ) IO<br>R( -- )<br>refills the input buffer</td> |
| </tr> |
| <tr> |
| <td>repeat</td> |
| <td><a href="CodeAsm/repeat.html#REPEAT" title="VE_REPEAT">REPEAT</a></td> |
| <td>(addr1 -- addr2 ) Control Structure<br>R( -- )<br>go back to begin</td> |
| </tr> |
| <tr> |
| <td>rot</td> |
| <td><a href="CodeAsm/rot.html#ROT" title="VE_ROT">ROT</a></td> |
| <td>( n1 n2 n3 -- n2 n3 n1) Stack<br>R( -- )<br>stack manupulation</td> |
| </tr> |
| <tr> |
| <td>rp</td> |
| <td><a href="CodeAsm/rp0.html#RP" title="VE_RP">RP</a></td> |
| <td>( -- addr) Stackpointer<br>R( -- )<br>address of variable to store the return stack pointer for inactive tasks</td> |
| </tr> |
| <tr> |
| <td>rp!</td> |
| <td><a href="CodeAsm/rpstore.html#RP_STORE" title="VE_RP_STORE">RP_STORE</a></td> |
| <td>( n -- ) Stackpointer<br>R( -- xy)<br>set return stack pointer</td> |
| </tr> |
| <tr> |
| <td>rp0</td> |
| <td><a href="CodeAsm/rp0.html#RP0" title="VE_RP0">RP0</a></td> |
| <td>( -- addr) Stackpointer<br>R( -- )<br>start value of return stack</td> |
| </tr> |
| <tr> |
| <td>rp@</td> |
| <td><a href="CodeAsm/rpfetch.html#RP_FETCH" title="VE_RP_FETCH">RP_FETCH</a></td> |
| <td>( -- n) Stackpointer<br>R( -- )<br>current return stack pointer address</td> |
| </tr> |
| <tr> |
| <td>rshift</td> |
| <td><a href="CodeAsm/rshift.html#RSHIFT" title="VE_RSHIFT">RSHIFT</a></td> |
| <td>( n1 n2 -- n3 ) Arithmetics<br>R( -- )<br>logical shift right</td> |
| </tr> |
| <tr> |
| <td>rx0</td> |
| <td><a href="CodeAsm/usart.html#RX0" title="VE_RX0">RX0</a></td> |
| <td>( -- c) Hardware Access<br>R( --)<br>get 1 character from input queue, wait if needed</td> |
| </tr> |
| <tr> |
| <td>rx0?</td> |
| <td><a href="CodeAsm/usart.html#RX0Q" title="VE_RX0Q">RX0Q</a></td> |
| <td>( -- f) Hardware Access<br>R( --)<br>check if unread characters are in the input queue.</td> |
| </tr> |
| <tr> |
| <td>s"</td> |
| <td><a href="CodeAsm/squote.html#SQUOTE" title="VE_SQUOTE">SQUOTE</a></td> |
| <td>( <cchar> -- ) Compiler<br>R( -- )<br>compiles a string to flash, at runtime leaves ( -- addr count) on stack</td> |
| </tr> |
| <tr> |
| <td>s"</td> |
| <td><a href="CodeAsm/squote.html#SQUOTE" title="VE_SQUOTE">SQUOTE</a></td> |
| <td>( <cchar> -- ) Compiler<br>R( -- )<br>compiles a string to flash, at runtime leaves ( -- addr count) on stack</td> |
| </tr> |
| <tr> |
| <td>s,</td> |
| <td><a href="CodeAsm/scomma.html#SCOMMA" title="VE_SCOMMA">SCOMMA</a></td> |
| <td>( addr len -- ) Compiler<br>R( -- )<br>compiles a string from RAM to Flash</td> |
| </tr> |
| <tr> |
| <td>s>d</td> |
| <td><a href="CodeAsm/s_to_d.html#S2D" title="VE_S2D">S2D</a></td> |
| <td>( n1 -- d1 ) Conversion<br>R( -- )<br>extend (signed) single cell value to double cell</td> |
| </tr> |
| <tr> |
| <td>sign</td> |
| <td><a href="CodeAsm/sign.html#SIGN" title="VE_SIGN">SIGN</a></td> |
| <td>( n -- ) Numeric IO<br>R( -- )<br>place a - in HLD if value is negative</td> |
| </tr> |
| <tr> |
| <td>sleep</td> |
| <td><a href="CodeAsm/sleep.html#SLEEP" title="VE_SLEEP">SLEEP</a></td> |
| <td>( -- ) Interrupt<br>R( -- )<br>calls the MCU sleep instruction. Not useful itself!</td> |
| </tr> |
| <tr> |
| <td>source</td> |
| <td><a href="CodeAsm/source.html#SOURCE" title="VE_SOURCE">SOURCE</a></td> |
| <td>( addr1 u1 n-- addr2 u2 ) System<br>R( -- )<br>adjust string from addr1 to addr1+n, reduce length from u1 to u2</td> |
| </tr> |
| <tr> |
| <td>sp</td> |
| <td><a href="CodeAsm/sp0.html#SP" title="VE_SP">SP</a></td> |
| <td>( -- addr) Stackpointer<br>R( -- )<br>address of variable to store data stack pointer for inactive tasks</td> |
| </tr> |
| <tr> |
| <td>sp!</td> |
| <td><a href="CodeAsm/spstore.html#SP_STORE" title="VE_SP_STORE">SP_STORE</a></td> |
| <td>( addr -- i*x) Stackpointer<br>R( -- )<br>data stack pointer changed to addr</td> |
| </tr> |
| <tr> |
| <td>sp0</td> |
| <td><a href="CodeAsm/sp0.html#SP0" title="VE_SP0">SP0</a></td> |
| <td>( -- addr) Stackpointer<br>R( -- )<br>start of data stack</td> |
| </tr> |
| <tr> |
| <td>sp@</td> |
| <td><a href="CodeAsm/spfetch.html#SP_FETCH" title="VE_SP_FETCH">SP_FETCH</a></td> |
| <td>( -- n) Stackpointer<br>R( -- )<br>current data stack pointer</td> |
| </tr> |
| <tr> |
| <td>space</td> |
| <td><a href="CodeAsm/space.html#SPACE" title="VE_SPACE">SPACE</a></td> |
| <td>( -- ) Character IO<br>R( -- )<br>emits a space (bl)</td> |
| </tr> |
| <tr> |
| <td>state</td> |
| <td><a href="CodeAsm/state.html#STATE" title="VE_STATE">STATE</a></td> |
| <td>( -- addr ) Compiler<br>R( -- )<br>system state</td> |
| </tr> |
| <tr> |
| <td>swap</td> |
| <td><a href="CodeAsm/swap.html#SWAP" title="VE_SWAP">SWAP</a></td> |
| <td>( n1 n2 -- n2 n1) Stack<br>R( -- )<br>stack manipulation</td> |
| </tr> |
| <tr> |
| <td>then</td> |
| <td><a href="CodeAsm/then.html#THEN" title="VE_THEN">THEN</a></td> |
| <td>( addr -- ) Compiler<br>R( -- )<br>finish if</td> |
| </tr> |
| <tr> |
| <td>throw</td> |
| <td><a href="CodeAsm/throw.html#THROW" title="VE_THROW">THROW</a></td> |
| <td>( n -- ) Exceptions<br>R( -- )<br>throw an exception</td> |
| </tr> |
| <tr> |
| <td>tib</td> |
| <td><a href="CodeAsm/tib.html#TIB" title="VE_TIB">TIB</a></td> |
| <td>( -- addr ) System Pointer<br>R( -- )<br>terminal input buffer address</td> |
| </tr> |
| <tr> |
| <td>to</td> |
| <td><a href="CodeAsm/to.html#TO" title="VE_TO">TO</a></td> |
| <td>( n <name> -- ) Tools<br>R( --)<br>store the TOS to value (an EEPROM 16bit cell)</td> |
| </tr> |
| <tr> |
| <td>turnkey</td> |
| <td><a href="CodeAsm/turnkey.html#TURNKEY" title="VE_TURNKEY">TURNKEY</a></td> |
| <td>( -- eaddr) System Pointer<br>R( -- )<br>address of the variable that holds an XT to be started by cold before quit takes over</td> |
| </tr> |
| <tr> |
| <td>tx0</td> |
| <td><a href="CodeAsm/usart.html#TX0" title="VE_TX0">TX0</a></td> |
| <td>(c -- ) Hardware Access<br>R( --)<br>put 1 character into output queue, wait if needed, enable UDRIE0 interrupt</td> |
| </tr> |
| <tr> |
| <td>tx0?</td> |
| <td><a href="CodeAsm/usart.html#TX0Q" title="VE_TX0Q">TX0Q</a></td> |
| <td>( -- f) Hardware Access<br>R( --)<br>check if a character can be appended to output queue.</td> |
| </tr> |
| <tr> |
| <td>type</td> |
| <td><a href="CodeAsm/type.html#TYPE" title="VE_TYPE">TYPE</a></td> |
| <td>( addr n -- ) Character IO<br>R( -- )<br>emits a string</td> |
| </tr> |
| <tr> |
| <td>u*/mod</td> |
| <td><a href="CodeAsm/ustarslashmod.html#USTARSLASHMOD" title="VE_USTARSLASHMOD">USTARSLASHMOD</a></td> |
| <td>( u1 u2 u3 -- rem quot) Arithmetics<br>R( -- )<br>unsigned division with remainder u3 * u2 / u1</td> |
| </tr> |
| <tr> |
| <td>u.</td> |
| <td><a href="CodeAsm/udot.html#UDOT" title="VE_UDOT">UDOT</a></td> |
| <td>( n -- ) Numeric IO<br>R( -- )<br>unsigned numeric output</td> |
| </tr> |
| <tr> |
| <td>u.</td> |
| <td><a href="CodeAsm/udot.html#UDOT" title="VE_UDOT">UDOT</a></td> |
| <td>( n -- ) Numeric IO<br>R( -- )<br>unsigned numeric output</td> |
| </tr> |
| <tr> |
| <td>u/mod</td> |
| <td><a href="CodeAsm/uslashmod.html#USLASHMOD" title="VE_USLASHMOD">USLASHMOD</a></td> |
| <td>(u1 u2 -- rem quot) Arithmetics<br>R( -- )<br>unsigned division with remainder</td> |
| </tr> |
| <tr> |
| <td>u<</td> |
| <td><a href="CodeAsm/uless.html#ULESS" title="VE_ULESS">ULESS</a></td> |
| <td>( u1 u2 -- flasg) Compare<br>R( -- )<br>compare values u1 < u2 (unsigned)</td> |
| </tr> |
| <tr> |
| <td>u></td> |
| <td><a href="CodeAsm/ugreater.html#UGREATER" title="VE_UGREATER">UGREATER</a></td> |
| <td>( u1 u2 -- flag ) Compare<br>R( -- )<br>compares u1 > u2 (unsigned)</td> |
| </tr> |
| <tr> |
| <td>um/mod</td> |
| <td><a href="CodeAsm/umslashmod.html#UMSLASHMOD" title="VE_UMSLASHMOD">UMSLASHMOD</a></td> |
| <td>( ud u2 -- rem quot) Arithmetics<br>R( -- )<br>unsigned division ud / u2 with remainder</td> |
| </tr> |
| <tr> |
| <td>unloop</td> |
| <td><a href="CodeAsm/unloop.html#UNLOOP" title="VE_UNLOOP">UNLOOP</a></td> |
| <td>( -- ) Control Structure<br>R(loop-sys -- )<br>remove loop-sys</td> |
| </tr> |
| <tr> |
| <td>until</td> |
| <td><a href="CodeAsm/until.html#UNTIL" title="VE_UNTIL">UNTIL</a></td> |
| <td>( addr -- ) Compiler<br>R( -- )<br>finish begin with conditional branch</td> |
| </tr> |
| <tr> |
| <td>unused</td> |
| <td><a href="CodeAsm/unused.html#UNUSED" title="VE_UNUSED">UNUSED</a></td> |
| <td>( -- n ) Tools<br>R( -- )<br>number of unused flash cells</td> |
| </tr> |
| <tr> |
| <td>up!</td> |
| <td><a href="CodeAsm/up.html#UP_STORE" title="VE_UP_STORE">UP_STORE</a></td> |
| <td>( addr -- ) System<br>R( -- )<br>set user pointer</td> |
| </tr> |
| <tr> |
| <td>up@</td> |
| <td><a href="CodeAsm/up.html#UP_FETCH" title="VE_UP_FETCH">UP_FETCH</a></td> |
| <td>( -- addr ) System<br>R( -- )<br>get user pointer</td> |
| </tr> |
| <tr> |
| <td>usart0</td> |
| <td><a href="CodeAsm/usart.html#USART0" title="VE_USART0">USART0</a></td> |
| <td>( -- ) Hardware Access<br>R( --)<br>initialize usart0</td> |
| </tr> |
| <tr> |
| <td>user</td> |
| <td><a href="CodeAsm/user.html#USER" title="VE_USER">USER</a></td> |
| <td>( n -- ) Compiler<br>R( -- )<br>define a new user variable</td> |
| </tr> |
| <tr> |
| <td>value</td> |
| <td><a href="CodeAsm/value.html#VALUE" title="VE_VALUE">VALUE</a></td> |
| <td>( n <name> -- ) Compiler<br>R( -- )<br>allocate space for 1 cell in EEPROM. used in conjunction with TO</td> |
| </tr> |
| <tr> |
| <td>variable</td> |
| <td><a href="CodeAsm/variable.html#VARIABLE" title="VE_VARIABLE">VARIABLE</a></td> |
| <td>( -- ) Compiler<br>R( -- )<br>create a variable entry and allocate RAM space for it</td> |
| </tr> |
| <tr> |
| <td>ver</td> |
| <td><a href="CodeAsm/ver.html#VER" title="VE_VER">VER</a></td> |
| <td>( -- ) Tools<br>R( -- )<br>emits the version string</td> |
| </tr> |
| <tr> |
| <td>wdr</td> |
| <td><a href="CodeAsm/wdr.html#WDR" title="VE_WDR">WDR</a></td> |
| <td>( -- ) Interrupt<br>R( -- )<br>calls the MCU wdr instruction</td> |
| </tr> |
| <tr> |
| <td>while</td> |
| <td><a href="CodeAsm/while.html#WHILE" title="VE_WHILE">WHILE</a></td> |
| <td>( dest -- orig dest ) Control Structure<br>R( -- )<br>control structure</td> |
| </tr> |
| <tr> |
| <td>word</td> |
| <td><a href="CodeAsm/word.html#WORD" title="VE_WORD">WORD</a></td> |
| <td>( c -- addr ) Tools<br>R( -- )<br>skip leading delimiter characters and parses TIB to the next delimiter. copy the word into PAD</td> |
| </tr> |
| <tr> |
| <td>words</td> |
| <td><a href="CodeAsm/words.html#WORDS" title="VE_WORDS">WORDS</a></td> |
| <td>( -- ) Tools<br>R( -- )<br>emits a list of all (visible) words in the dictionary</td> |
| </tr> |
| <tr> |
| <td>words</td> |
| <td><a href="CodeAsm/words.html#WORDS" title="VE_WORDS">WORDS</a></td> |
| <td>( -- ) Tools<br>R( -- )<br>emits a list of all (visible) words in the dictionary</td> |
| </tr> |
| <tr> |
| <td>xor</td> |
| <td><a href="CodeAsm/xor.html#XOR" title="VE_XOR">XOR</a></td> |
| <td>( n1 n2 -- n3) Logic<br>R( -- )<br>exclusive or</td> |
| </tr> |
| </table> |
| </div> |
| <!-- AUTOINCLUDE START "Page/Footer.en.ihtml" DO NOT REMOVE --> |
| <!-- ============== FOOTER ============== --> |
| <div class="Footer"> |
| <script type="text/javascript"> |
| <!-- |
| SetRelativePath("../../../"); |
| DrawFooter(); |
| // --> |
| </script> |
| <noscript> |
| <p><b> JavaScript is required for including of the footer </b></p> |
| </noscript> |
| </div> |
| <!-- AUTOINCLUDE END --> |
| </body> |
| </html> |