mirror of
https://github.com/michaelcmartin/Ophis.git
synced 2025-04-18 23:37:14 +00:00
Update manual
This commit is contained in:
parent
d6159faaee
commit
202977d558
@ -11,10 +11,10 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Example: Fibonnacci Numbers"
|
||||
HREF="x967.html"><LINK
|
||||
HREF="x1104.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="hello2.oph"
|
||||
HREF="x982.html"></HEAD
|
||||
HREF="x1119.html"></HEAD
|
||||
><BODY
|
||||
CLASS="APPENDIX"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -42,7 +42,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x967.html"
|
||||
HREF="x1104.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -56,7 +56,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x982.html"
|
||||
HREF="x1119.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -69,7 +69,7 @@ WIDTH="100%"></DIV
|
||||
CLASS="APPENDIX"
|
||||
><H1
|
||||
><A
|
||||
NAME="AEN975"
|
||||
NAME="AEN1112"
|
||||
></A
|
||||
>Example Programs</H1
|
||||
><P
|
||||
@ -135,7 +135,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x967.html"
|
||||
HREF="x1104.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -153,7 +153,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x982.html"
|
||||
HREF="x1119.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
@ -11,10 +11,10 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="fibonacci.oph"
|
||||
HREF="x1030.html"><LINK
|
||||
HREF="x1163.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Basic arguments"
|
||||
HREF="x1101.html"></HEAD
|
||||
HREF="x1234.html"></HEAD
|
||||
><BODY
|
||||
CLASS="APPENDIX"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -42,7 +42,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1030.html"
|
||||
HREF="x1163.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -56,7 +56,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1101.html"
|
||||
HREF="x1234.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -77,7 +77,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN1036"
|
||||
NAME="AEN1169"
|
||||
>Command Modes</A
|
||||
></H1
|
||||
><P
|
||||
@ -261,7 +261,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1030.html"
|
||||
HREF="x1163.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -279,7 +279,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1101.html"
|
||||
HREF="x1234.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
201
book/book1.html
201
book/book1.html
@ -37,7 +37,7 @@ NAME="AEN4"
|
||||
>Michael Martin</H3
|
||||
><P
|
||||
CLASS="COPYRIGHT"
|
||||
>Copyright © 2006-2012 Michael Martin</P
|
||||
>Copyright © 2006-2014 Michael Martin</P
|
||||
><HR></DIV
|
||||
><DIV
|
||||
CLASS="TOC"
|
||||
@ -60,141 +60,160 @@ HREF="f10.html#AEN15"
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x29.html"
|
||||
HREF="x30.html"
|
||||
>Getting a copy of Ophis</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x41.html"
|
||||
HREF="x42.html"
|
||||
>About the examples</A
|
||||
></DT
|
||||
></DL
|
||||
></DD
|
||||
><DT
|
||||
>I. <A
|
||||
HREF="p50.html"
|
||||
HREF="p51.html"
|
||||
>Using the Ophis Assembler</A
|
||||
></DT
|
||||
><DD
|
||||
><DL
|
||||
><DT
|
||||
><A
|
||||
HREF="c55.html"
|
||||
HREF="c56.html"
|
||||
>The basics</A
|
||||
></DT
|
||||
><DD
|
||||
><DL
|
||||
><DT
|
||||
><A
|
||||
HREF="c55.html#AEN68"
|
||||
HREF="c56.html#AEN69"
|
||||
>A note on numeric notation</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x71.html"
|
||||
HREF="x72.html"
|
||||
>Producing Commodore 64 programs</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x140.html"
|
||||
HREF="x141.html"
|
||||
>Related commands and options</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x161.html"
|
||||
HREF="x162.html"
|
||||
>Writing the actual code</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x170.html"
|
||||
HREF="x171.html"
|
||||
>Assembling the code</A
|
||||
></DT
|
||||
></DL
|
||||
></DD
|
||||
><DT
|
||||
><A
|
||||
HREF="c223.html"
|
||||
HREF="c236.html"
|
||||
>Labels and aliases</A
|
||||
></DT
|
||||
><DD
|
||||
><DL
|
||||
><DT
|
||||
><A
|
||||
HREF="c223.html#AEN229"
|
||||
HREF="c236.html#AEN242"
|
||||
>Temporary labels</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x237.html"
|
||||
HREF="x251.html"
|
||||
>Anonymous labels</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x248.html"
|
||||
HREF="x262.html"
|
||||
>Aliasing</A
|
||||
></DT
|
||||
></DL
|
||||
></DD
|
||||
><DT
|
||||
><A
|
||||
HREF="c259.html"
|
||||
HREF="c273.html"
|
||||
>Headers, Libraries, and Macros</A
|
||||
></DT
|
||||
><DD
|
||||
><DL
|
||||
><DT
|
||||
><A
|
||||
HREF="c259.html#AEN263"
|
||||
HREF="c273.html#AEN277"
|
||||
>Header files and libraries</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x284.html"
|
||||
HREF="x298.html"
|
||||
>Macros</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x314.html"
|
||||
HREF="x328.html"
|
||||
>Example code</A
|
||||
></DT
|
||||
></DL
|
||||
></DD
|
||||
><DT
|
||||
><A
|
||||
HREF="c319.html"
|
||||
HREF="c333.html"
|
||||
>Character maps</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="c353.html"
|
||||
HREF="c367.html"
|
||||
>Local variables and memory segments</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="c395.html"
|
||||
HREF="c409.html"
|
||||
>Expressions</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="c443.html"
|
||||
HREF="c460.html"
|
||||
>Advanced Memory Segments</A
|
||||
></DT
|
||||
><DD
|
||||
><DL
|
||||
><DT
|
||||
><A
|
||||
HREF="c443.html#AEN448"
|
||||
HREF="c460.html#AEN465"
|
||||
>The Problem</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x454.html"
|
||||
HREF="x471.html"
|
||||
>The Solution</A
|
||||
></DT
|
||||
></DL
|
||||
></DD
|
||||
><DT
|
||||
><A
|
||||
HREF="c489.html"
|
||||
>Platform-Specific Techniques</A
|
||||
></DT
|
||||
><DD
|
||||
><DL
|
||||
><DT
|
||||
><A
|
||||
HREF="c489.html#AEN492"
|
||||
>The Commodore 64 and VIC-20</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x476.html"
|
||||
>Where to go from here</A
|
||||
HREF="x606.html"
|
||||
>The Nintendo Entertainment System</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x611.html"
|
||||
>The Atari 2600 VCS</A
|
||||
></DT
|
||||
></DL
|
||||
></DD
|
||||
@ -202,172 +221,172 @@ HREF="x476.html"
|
||||
></DD
|
||||
><DT
|
||||
>II. <A
|
||||
HREF="p481.html"
|
||||
HREF="p618.html"
|
||||
>To HLL and Back</A
|
||||
></DT
|
||||
><DD
|
||||
><DL
|
||||
><DT
|
||||
><A
|
||||
HREF="c486.html"
|
||||
HREF="c623.html"
|
||||
>The Second Step</A
|
||||
></DT
|
||||
><DD
|
||||
><DL
|
||||
><DT
|
||||
><A
|
||||
HREF="c486.html#AEN489"
|
||||
HREF="c623.html#AEN626"
|
||||
>The problem</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x498.html"
|
||||
HREF="x635.html"
|
||||
>The solution</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x504.html"
|
||||
HREF="x641.html"
|
||||
>Unsigned arithmetic</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x527.html"
|
||||
HREF="x664.html"
|
||||
>16-bit addition and subtraction</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x537.html"
|
||||
HREF="x674.html"
|
||||
>16-bit comparisons</A
|
||||
></DT
|
||||
></DL
|
||||
></DD
|
||||
><DT
|
||||
><A
|
||||
HREF="c543.html"
|
||||
HREF="c680.html"
|
||||
>Structured Programming</A
|
||||
></DT
|
||||
><DD
|
||||
><DL
|
||||
><DT
|
||||
><A
|
||||
HREF="c543.html#AEN548"
|
||||
HREF="c680.html#AEN685"
|
||||
>Control constructs</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x597.html"
|
||||
HREF="x734.html"
|
||||
>The stack</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x603.html"
|
||||
HREF="x740.html"
|
||||
>Procedures and register saving</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x621.html"
|
||||
HREF="x758.html"
|
||||
>Variables</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x666.html"
|
||||
HREF="x803.html"
|
||||
>Data structures</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x719.html"
|
||||
HREF="x856.html"
|
||||
>A modest example: Insertion sort on linked lists</A
|
||||
></DT
|
||||
></DL
|
||||
></DD
|
||||
><DT
|
||||
><A
|
||||
HREF="c748.html"
|
||||
HREF="c885.html"
|
||||
>Pointers and Indirection</A
|
||||
></DT
|
||||
><DD
|
||||
><DL
|
||||
><DT
|
||||
><A
|
||||
HREF="c748.html#AEN753"
|
||||
HREF="c885.html#AEN890"
|
||||
>The absolute basics</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x782.html"
|
||||
HREF="x919.html"
|
||||
>Pointer arithmetic</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x798.html"
|
||||
HREF="x935.html"
|
||||
>What about Indexed Indirect?</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x805.html"
|
||||
HREF="x942.html"
|
||||
>Comparison with the other indexed forms</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x813.html"
|
||||
HREF="x950.html"
|
||||
>Conclusion</A
|
||||
></DT
|
||||
></DL
|
||||
></DD
|
||||
><DT
|
||||
><A
|
||||
HREF="c816.html"
|
||||
HREF="c953.html"
|
||||
>Functionals</A
|
||||
></DT
|
||||
><DD
|
||||
><DL
|
||||
><DT
|
||||
><A
|
||||
HREF="c816.html#AEN821"
|
||||
HREF="c953.html#AEN958"
|
||||
>Function Pointers</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x836.html"
|
||||
HREF="x973.html"
|
||||
>A quick digression on how subroutines work</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x855.html"
|
||||
HREF="x992.html"
|
||||
>Dispatch-on-type and Data-Directed Assembler</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x871.html"
|
||||
HREF="x1008.html"
|
||||
>VTables and Object-Oriented Assembler</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x892.html"
|
||||
HREF="x1029.html"
|
||||
>A final reminder</A
|
||||
></DT
|
||||
></DL
|
||||
></DD
|
||||
><DT
|
||||
><A
|
||||
HREF="c900.html"
|
||||
HREF="c1037.html"
|
||||
>Call Stacks</A
|
||||
></DT
|
||||
><DD
|
||||
><DL
|
||||
><DT
|
||||
><A
|
||||
HREF="c900.html#AEN904"
|
||||
HREF="c1037.html#AEN1041"
|
||||
>Recursion</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x915.html"
|
||||
HREF="x1052.html"
|
||||
>Our Goals</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x967.html"
|
||||
HREF="x1104.html"
|
||||
>Example: Fibonnacci Numbers</A
|
||||
></DT
|
||||
></DL
|
||||
@ -376,14 +395,14 @@ HREF="x967.html"
|
||||
></DD
|
||||
><DT
|
||||
><A
|
||||
HREF="a975.html"
|
||||
HREF="a1112.html"
|
||||
>Example Programs</A
|
||||
></DT
|
||||
><DD
|
||||
><DL
|
||||
><DT
|
||||
><A
|
||||
HREF="a975.html#TUTOR1-SRC"
|
||||
HREF="a1112.html#TUTOR1-SRC"
|
||||
><TT
|
||||
CLASS="FILENAME"
|
||||
>hello1.oph</TT
|
||||
@ -391,7 +410,7 @@ CLASS="FILENAME"
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x982.html"
|
||||
HREF="x1119.html"
|
||||
><TT
|
||||
CLASS="FILENAME"
|
||||
>hello2.oph</TT
|
||||
@ -399,7 +418,7 @@ CLASS="FILENAME"
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x986.html"
|
||||
HREF="x1123.html"
|
||||
><TT
|
||||
CLASS="FILENAME"
|
||||
>c64-1.oph</TT
|
||||
@ -407,7 +426,7 @@ CLASS="FILENAME"
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x990.html"
|
||||
HREF="x1127.html"
|
||||
><TT
|
||||
CLASS="FILENAME"
|
||||
>c64kernal.oph</TT
|
||||
@ -415,7 +434,7 @@ CLASS="FILENAME"
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x994.html"
|
||||
HREF="x1131.html"
|
||||
><TT
|
||||
CLASS="FILENAME"
|
||||
>hello3.oph</TT
|
||||
@ -423,7 +442,7 @@ CLASS="FILENAME"
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x998.html"
|
||||
HREF="x1135.html"
|
||||
><TT
|
||||
CLASS="FILENAME"
|
||||
>hello4a.oph</TT
|
||||
@ -431,7 +450,7 @@ CLASS="FILENAME"
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x1002.html"
|
||||
HREF="x1139.html"
|
||||
><TT
|
||||
CLASS="FILENAME"
|
||||
>hello4b.oph</TT
|
||||
@ -439,7 +458,7 @@ CLASS="FILENAME"
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x1006.html"
|
||||
HREF="x1143.html"
|
||||
><TT
|
||||
CLASS="FILENAME"
|
||||
>hello4c.oph</TT
|
||||
@ -447,7 +466,7 @@ CLASS="FILENAME"
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x1010.html"
|
||||
HREF="x1147.html"
|
||||
><TT
|
||||
CLASS="FILENAME"
|
||||
>hello5.oph</TT
|
||||
@ -455,7 +474,7 @@ CLASS="FILENAME"
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x1014.html"
|
||||
HREF="x1151.html"
|
||||
><TT
|
||||
CLASS="FILENAME"
|
||||
>hello6.oph</TT
|
||||
@ -463,15 +482,7 @@ CLASS="FILENAME"
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x1018.html"
|
||||
><TT
|
||||
CLASS="FILENAME"
|
||||
>c64_0.oph</TT
|
||||
></A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x1022.html"
|
||||
HREF="x1155.html"
|
||||
><TT
|
||||
CLASS="FILENAME"
|
||||
>hello7.oph</TT
|
||||
@ -479,7 +490,7 @@ CLASS="FILENAME"
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x1026.html"
|
||||
HREF="x1159.html"
|
||||
><TT
|
||||
CLASS="FILENAME"
|
||||
>structuredemo.oph</TT
|
||||
@ -487,7 +498,7 @@ CLASS="FILENAME"
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x1030.html"
|
||||
HREF="x1163.html"
|
||||
><TT
|
||||
CLASS="FILENAME"
|
||||
>fibonacci.oph</TT
|
||||
@ -497,101 +508,101 @@ CLASS="FILENAME"
|
||||
></DD
|
||||
><DT
|
||||
><A
|
||||
HREF="a1034.html"
|
||||
HREF="a1167.html"
|
||||
>Ophis Command Reference</A
|
||||
></DT
|
||||
><DD
|
||||
><DL
|
||||
><DT
|
||||
><A
|
||||
HREF="a1034.html#AEN1036"
|
||||
HREF="a1167.html#AEN1169"
|
||||
>Command Modes</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x1101.html"
|
||||
HREF="x1234.html"
|
||||
>Basic arguments</A
|
||||
></DT
|
||||
><DD
|
||||
><DL
|
||||
><DT
|
||||
><A
|
||||
HREF="x1101.html#AEN1104"
|
||||
HREF="x1234.html#AEN1237"
|
||||
>Numeric types</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x1101.html#AEN1127"
|
||||
HREF="x1234.html#AEN1260"
|
||||
>Label types</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x1101.html#AEN1140"
|
||||
HREF="x1234.html#AEN1273"
|
||||
>String types</A
|
||||
></DT
|
||||
></DL
|
||||
></DD
|
||||
><DT
|
||||
><A
|
||||
HREF="x1149.html"
|
||||
HREF="x1282.html"
|
||||
>Compound Arguments</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x1176.html"
|
||||
HREF="x1309.html"
|
||||
>Memory Model</A
|
||||
></DT
|
||||
><DD
|
||||
><DL
|
||||
><DT
|
||||
><A
|
||||
HREF="x1176.html#AEN1179"
|
||||
HREF="x1309.html#AEN1312"
|
||||
>Basic PC tracking</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x1176.html#AEN1188"
|
||||
HREF="x1309.html#AEN1321"
|
||||
>Basic Segmentation simulation</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x1176.html#AEN1212"
|
||||
HREF="x1309.html#AEN1345"
|
||||
>General Segmentation Simulation</A
|
||||
></DT
|
||||
></DL
|
||||
></DD
|
||||
><DT
|
||||
><A
|
||||
HREF="x1221.html"
|
||||
HREF="x1354.html"
|
||||
>Macros</A
|
||||
></DT
|
||||
><DD
|
||||
><DL
|
||||
><DT
|
||||
><A
|
||||
HREF="x1221.html#AEN1225"
|
||||
HREF="x1354.html#AEN1358"
|
||||
>Defining Macros</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x1221.html#AEN1231"
|
||||
HREF="x1354.html#AEN1364"
|
||||
>Invoking Macros</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x1221.html#AEN1239"
|
||||
HREF="x1354.html#AEN1372"
|
||||
>Passing Arguments to Macros</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="x1221.html#AEN1249"
|
||||
HREF="x1354.html#AEN1382"
|
||||
>Features and Restrictions of the Ophis Macro Model</A
|
||||
></DT
|
||||
></DL
|
||||
></DD
|
||||
><DT
|
||||
><A
|
||||
HREF="x1261.html"
|
||||
HREF="x1394.html"
|
||||
>Assembler directives</A
|
||||
></DT
|
||||
></DL
|
||||
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="To HLL and Back"
|
||||
HREF="p481.html"><LINK
|
||||
HREF="p618.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="A final reminder"
|
||||
HREF="x892.html"><LINK
|
||||
HREF="x1029.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Our Goals"
|
||||
HREF="x915.html"></HEAD
|
||||
HREF="x1052.html"></HEAD
|
||||
><BODY
|
||||
CLASS="CHAPTER"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x892.html"
|
||||
HREF="x1029.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x915.html"
|
||||
HREF="x1052.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -72,7 +72,7 @@ WIDTH="100%"></DIV
|
||||
CLASS="CHAPTER"
|
||||
><H1
|
||||
><A
|
||||
NAME="AEN900"
|
||||
NAME="AEN1037"
|
||||
></A
|
||||
>Call Stacks</H1
|
||||
><P
|
||||
@ -82,7 +82,7 @@ NAME="AEN900"
|
||||
end up stomping on its previous values, and everything will be
|
||||
hideously scrambled. Various workarounds for this are covered
|
||||
in <A
|
||||
HREF="c543.html"
|
||||
HREF="c680.html"
|
||||
>the Chapter called <I
|
||||
>Structured Programming</I
|
||||
></A
|
||||
@ -92,7 +92,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN904"
|
||||
NAME="AEN1041"
|
||||
>Recursion</A
|
||||
></H1
|
||||
><P
|
||||
@ -127,7 +127,7 @@ CLASS="LITERAL"
|
||||
</P
|
||||
><P
|
||||
> As we saw in <A
|
||||
HREF="c748.html"
|
||||
HREF="c885.html"
|
||||
>the Chapter called <I
|
||||
>Pointers and Indirection</I
|
||||
></A
|
||||
@ -158,7 +158,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x892.html"
|
||||
HREF="x1029.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -176,7 +176,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x915.html"
|
||||
HREF="x1052.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -192,7 +192,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="p481.html"
|
||||
HREF="p618.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Using the Ophis Assembler"
|
||||
HREF="p50.html"><LINK
|
||||
HREF="p51.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Assembling the code"
|
||||
HREF="x170.html"><LINK
|
||||
HREF="x171.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Anonymous labels"
|
||||
HREF="x237.html"></HEAD
|
||||
HREF="x251.html"></HEAD
|
||||
><BODY
|
||||
CLASS="CHAPTER"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x170.html"
|
||||
HREF="x171.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x237.html"
|
||||
HREF="x251.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -72,7 +72,7 @@ WIDTH="100%"></DIV
|
||||
CLASS="CHAPTER"
|
||||
><H1
|
||||
><A
|
||||
NAME="AEN223"
|
||||
NAME="AEN236"
|
||||
></A
|
||||
>Labels and aliases</H1
|
||||
><P
|
||||
@ -99,7 +99,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN229"
|
||||
NAME="AEN242"
|
||||
>Temporary labels</A
|
||||
></H1
|
||||
><P
|
||||
@ -146,6 +146,12 @@ _next: .word 0 ; End of program
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
> It's possible to have multiple temporary labels with the same
|
||||
name in different parts of the code. If you create a label map
|
||||
in those cases, you will have to look at the sourcefile location
|
||||
to distinguish them.
|
||||
</P
|
||||
></DIV
|
||||
></DIV
|
||||
><DIV
|
||||
@ -164,7 +170,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x170.html"
|
||||
HREF="x171.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -182,7 +188,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x237.html"
|
||||
HREF="x251.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -198,7 +204,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="p50.html"
|
||||
HREF="p51.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Using the Ophis Assembler"
|
||||
HREF="p50.html"><LINK
|
||||
HREF="p51.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Aliasing"
|
||||
HREF="x248.html"><LINK
|
||||
HREF="x262.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Macros"
|
||||
HREF="x284.html"></HEAD
|
||||
HREF="x298.html"></HEAD
|
||||
><BODY
|
||||
CLASS="CHAPTER"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x248.html"
|
||||
HREF="x262.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x284.html"
|
||||
HREF="x298.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -90,7 +90,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN263"
|
||||
NAME="AEN277"
|
||||
>Header files and libraries</A
|
||||
></H1
|
||||
><P
|
||||
@ -158,14 +158,14 @@ CLASS="LITERAL"
|
||||
> Since there have been no interesting changes to the prelude, and
|
||||
the KERNAL values are standard, we do not reproduce them here.
|
||||
(The files in question are <A
|
||||
HREF="x986.html"
|
||||
HREF="x1123.html"
|
||||
><I
|
||||
><I
|
||||
>c64-1.oph</I
|
||||
></I
|
||||
></A
|
||||
> and <A
|
||||
HREF="x990.html"
|
||||
HREF="x1127.html"
|
||||
><I
|
||||
><I
|
||||
>c64kernal.oph</I
|
||||
@ -200,7 +200,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x248.html"
|
||||
HREF="x262.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -218,7 +218,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x284.html"
|
||||
HREF="x298.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -234,7 +234,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="p50.html"
|
||||
HREF="p51.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Using the Ophis Assembler"
|
||||
HREF="p50.html"><LINK
|
||||
HREF="p51.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Example code"
|
||||
HREF="x314.html"><LINK
|
||||
HREF="x328.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Local variables and memory segments"
|
||||
HREF="c353.html"></HEAD
|
||||
HREF="c367.html"></HEAD
|
||||
><BODY
|
||||
CLASS="CHAPTER"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x314.html"
|
||||
HREF="x328.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c353.html"
|
||||
HREF="c367.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -93,14 +93,14 @@ CLASS="USERINPUT"
|
||||
><P
|
||||
> There actually are better ways of getting a time-delay on the
|
||||
Commodore 64; we'll deal with those in <A
|
||||
HREF="c353.html"
|
||||
HREF="c367.html"
|
||||
>the Chapter called <I
|
||||
>Local variables and memory segments</I
|
||||
></A
|
||||
>.
|
||||
As a result, there isn't really a lot to discuss here. The later
|
||||
tutorials will be building off of <A
|
||||
HREF="x998.html"
|
||||
HREF="x1135.html"
|
||||
><I
|
||||
><I
|
||||
>hello4a.oph</I
|
||||
@ -124,13 +124,13 @@ CLASS="LITERAL"
|
||||
>lower'case</TT
|
||||
> aliases back
|
||||
in <A
|
||||
HREF="c259.html"
|
||||
HREF="c273.html"
|
||||
>the Chapter called <I
|
||||
>Headers, Libraries, and Macros</I
|
||||
></A
|
||||
> as part of the
|
||||
standard <A
|
||||
HREF="x990.html"
|
||||
HREF="x1127.html"
|
||||
><I
|
||||
><I
|
||||
>c64kernal.oph</I
|
||||
@ -186,7 +186,7 @@ target10: .byte "Universe", 0</PRE
|
||||
></TABLE
|
||||
><P
|
||||
> The code that does this is in <A
|
||||
HREF="x1002.html"
|
||||
HREF="x1139.html"
|
||||
><I
|
||||
><I
|
||||
>hello4b.oph</I
|
||||
@ -248,7 +248,7 @@ CLASS="QUOTE"
|
||||
</P
|
||||
><P
|
||||
> The fixed code is in <A
|
||||
HREF="x1006.html"
|
||||
HREF="x1143.html"
|
||||
><I
|
||||
><I
|
||||
>hello4c.oph</I
|
||||
@ -288,7 +288,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x314.html"
|
||||
HREF="x328.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -306,7 +306,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c353.html"
|
||||
HREF="c367.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -322,7 +322,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="p50.html"
|
||||
HREF="p51.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Using the Ophis Assembler"
|
||||
HREF="p50.html"><LINK
|
||||
HREF="p51.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Character maps"
|
||||
HREF="c319.html"><LINK
|
||||
HREF="c333.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Expressions"
|
||||
HREF="c395.html"></HEAD
|
||||
HREF="c409.html"></HEAD
|
||||
><BODY
|
||||
CLASS="CHAPTER"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c319.html"
|
||||
HREF="c333.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c395.html"
|
||||
HREF="c409.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -77,7 +77,7 @@ NAME="CH5-LINK"
|
||||
>Local variables and memory segments</H1
|
||||
><P
|
||||
> As mentioned in <A
|
||||
HREF="c319.html"
|
||||
HREF="c333.html"
|
||||
>the Chapter called <I
|
||||
>Character maps</I
|
||||
></A
|
||||
@ -331,7 +331,7 @@ CLASS="PROGRAMLISTING"
|
||||
></TABLE
|
||||
><P
|
||||
> The final program is available as <A
|
||||
HREF="x1010.html"
|
||||
HREF="x1147.html"
|
||||
><I
|
||||
><I
|
||||
>hello5.oph</I
|
||||
@ -358,7 +358,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c319.html"
|
||||
HREF="c333.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -376,7 +376,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c395.html"
|
||||
HREF="c409.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -392,7 +392,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="p50.html"
|
||||
HREF="p51.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Using the Ophis Assembler"
|
||||
HREF="p50.html"><LINK
|
||||
HREF="p51.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Local variables and memory segments"
|
||||
HREF="c353.html"><LINK
|
||||
HREF="c367.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Advanced Memory Segments"
|
||||
HREF="c443.html"></HEAD
|
||||
HREF="c460.html"></HEAD
|
||||
><BODY
|
||||
CLASS="CHAPTER"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c353.html"
|
||||
HREF="c367.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c443.html"
|
||||
HREF="c460.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -72,7 +72,7 @@ WIDTH="100%"></DIV
|
||||
CLASS="CHAPTER"
|
||||
><H1
|
||||
><A
|
||||
NAME="AEN395"
|
||||
NAME="AEN409"
|
||||
></A
|
||||
>Expressions</H1
|
||||
><P
|
||||
@ -191,7 +191,14 @@ CLASS="PROGRAMLISTING"
|
||||
CLASS="LITERAL"
|
||||
>cache</TT
|
||||
> once, but
|
||||
can use addition to refer to any offset from it.
|
||||
can use addition to refer to any offset from it.<A
|
||||
NAME="AEN425"
|
||||
HREF="#FTN.AEN425"
|
||||
><SPAN
|
||||
CLASS="footnote"
|
||||
>[1]</SPAN
|
||||
></A
|
||||
>
|
||||
</P
|
||||
><P
|
||||
> Ophis supports following operations, with the following precedence
|
||||
@ -200,7 +207,7 @@ CLASS="LITERAL"
|
||||
><DIV
|
||||
CLASS="TABLE"
|
||||
><A
|
||||
NAME="AEN412"
|
||||
NAME="AEN429"
|
||||
></A
|
||||
><P
|
||||
><B
|
||||
@ -279,7 +286,7 @@ CLASS="LITERAL"
|
||||
><P
|
||||
> The code for this version of the code is
|
||||
in <A
|
||||
HREF="x1014.html"
|
||||
HREF="x1151.html"
|
||||
><I
|
||||
><I
|
||||
>hello6.oph</I
|
||||
@ -288,6 +295,41 @@ HREF="x1014.html"
|
||||
>.
|
||||
</P
|
||||
></DIV
|
||||
><H3
|
||||
CLASS="FOOTNOTES"
|
||||
>Notes</H3
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
CLASS="FOOTNOTES"
|
||||
WIDTH="100%"
|
||||
><TR
|
||||
><TD
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
WIDTH="5%"
|
||||
><A
|
||||
NAME="FTN.AEN425"
|
||||
HREF="c409.html#AEN425"
|
||||
><SPAN
|
||||
CLASS="footnote"
|
||||
>[1]</SPAN
|
||||
></A
|
||||
></TD
|
||||
><TD
|
||||
ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
WIDTH="95%"
|
||||
><P
|
||||
>We
|
||||
could spare ourselves some trouble here and use $fb instead of
|
||||
$10, which BASIC does <I
|
||||
CLASS="EMPHASIS"
|
||||
>not</I
|
||||
> use, but the
|
||||
example is more thorough this way.</P
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><DIV
|
||||
CLASS="NAVFOOTER"
|
||||
><HR
|
||||
@ -304,7 +346,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c353.html"
|
||||
HREF="c367.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -322,7 +364,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c443.html"
|
||||
HREF="c460.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -338,7 +380,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="p50.html"
|
||||
HREF="p51.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Using the Ophis Assembler"
|
||||
HREF="p50.html"><LINK
|
||||
HREF="p51.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Expressions"
|
||||
HREF="c395.html"><LINK
|
||||
HREF="c409.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="The Solution"
|
||||
HREF="x454.html"></HEAD
|
||||
HREF="x471.html"></HEAD
|
||||
><BODY
|
||||
CLASS="CHAPTER"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c395.html"
|
||||
HREF="c409.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x454.html"
|
||||
HREF="x471.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -72,13 +72,12 @@ WIDTH="100%"></DIV
|
||||
CLASS="CHAPTER"
|
||||
><H1
|
||||
><A
|
||||
NAME="AEN443"
|
||||
NAME="AEN460"
|
||||
></A
|
||||
>Advanced Memory Segments</H1
|
||||
><P
|
||||
> This is the last section of the Ophis tutorial. By now we've
|
||||
covered the basics of every command in the assembler; in this
|
||||
final installment we show the full capabilities of
|
||||
> By now we've covered the basics of every command in the assembler;
|
||||
in this final installment we show the full capabilities of
|
||||
the <TT
|
||||
CLASS="LITERAL"
|
||||
>.text</TT
|
||||
@ -86,14 +85,15 @@ CLASS="LITERAL"
|
||||
CLASS="LITERAL"
|
||||
>.data</TT
|
||||
> commands
|
||||
as we produce a final set of Commodore 64 header files.
|
||||
as we produce a more sophisticated set of Commodore 64 header
|
||||
files.
|
||||
</P
|
||||
><DIV
|
||||
CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN448"
|
||||
NAME="AEN465"
|
||||
>The Problem</A
|
||||
></H1
|
||||
><P
|
||||
@ -102,7 +102,7 @@ CLASS="LITERAL"
|
||||
>print'str</TT
|
||||
> routine
|
||||
in <A
|
||||
HREF="x1014.html"
|
||||
HREF="x1151.html"
|
||||
><I
|
||||
><I
|
||||
>hello6.oph</I
|
||||
@ -112,7 +112,7 @@ HREF="x1014.html"
|
||||
memory locations $10 and $11 directly. We'd prefer to have
|
||||
symbolic names for them. This reprises our concerns back in
|
||||
<A
|
||||
HREF="c353.html"
|
||||
HREF="c367.html"
|
||||
>the Chapter called <I
|
||||
>Local variables and memory segments</I
|
||||
></A
|
||||
@ -140,7 +140,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c395.html"
|
||||
HREF="c409.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -158,7 +158,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x454.html"
|
||||
HREF="x471.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -174,7 +174,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="p50.html"
|
||||
HREF="p51.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
530
book/c489.html
Normal file
530
book/c489.html
Normal file
@ -0,0 +1,530 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML
|
||||
><HEAD
|
||||
><TITLE
|
||||
>Platform-Specific Techniques</TITLE
|
||||
><META
|
||||
NAME="GENERATOR"
|
||||
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
|
||||
REL="HOME"
|
||||
TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Using the Ophis Assembler"
|
||||
HREF="p51.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="The Solution"
|
||||
HREF="x471.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="The Nintendo Entertainment System"
|
||||
HREF="x606.html"></HEAD
|
||||
><BODY
|
||||
CLASS="CHAPTER"
|
||||
BGCOLOR="#FFFFFF"
|
||||
TEXT="#000000"
|
||||
LINK="#0000FF"
|
||||
VLINK="#840084"
|
||||
ALINK="#0000FF"
|
||||
><DIV
|
||||
CLASS="NAVHEADER"
|
||||
><TABLE
|
||||
SUMMARY="Header navigation table"
|
||||
WIDTH="100%"
|
||||
BORDER="0"
|
||||
CELLPADDING="0"
|
||||
CELLSPACING="0"
|
||||
><TR
|
||||
><TH
|
||||
COLSPAN="3"
|
||||
ALIGN="center"
|
||||
>Programming with Ophis</TH
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x471.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
><TD
|
||||
WIDTH="80%"
|
||||
ALIGN="center"
|
||||
VALIGN="bottom"
|
||||
></TD
|
||||
><TD
|
||||
WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x606.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><HR
|
||||
ALIGN="LEFT"
|
||||
WIDTH="100%"></DIV
|
||||
><DIV
|
||||
CLASS="CHAPTER"
|
||||
><H1
|
||||
><A
|
||||
NAME="AEN489"
|
||||
></A
|
||||
>Platform-Specific Techniques</H1
|
||||
><P
|
||||
> Ophis is intended to produce cross-assembled binaries that will
|
||||
run in a variety of contexts. The expectation is that most users
|
||||
will be writing for emulated versions of hardware from when the
|
||||
6502 chip was current, and producing files either for those
|
||||
emulators or for devices that will transfer the results to real
|
||||
hardware. This chapter describes the support routines and examples
|
||||
to make those tasks easier.
|
||||
</P
|
||||
><DIV
|
||||
CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN492"
|
||||
>The Commodore 64 and VIC-20</A
|
||||
></H1
|
||||
><P
|
||||
> In a real sense, the Commodore 64 is the "native"
|
||||
target platform for Ophis. It was the first platform targeted
|
||||
and it's the one that has received the most additional
|
||||
support. It's also one where the developer needs to take the
|
||||
most care about exactly what kind of program they are
|
||||
writing.
|
||||
</P
|
||||
><P
|
||||
></P
|
||||
><UL
|
||||
><LI
|
||||
><P
|
||||
> <TT
|
||||
CLASS="LITERAL"
|
||||
>c64kernal.oph</TT
|
||||
> actually defines no
|
||||
code. It merely sets up the customary names for the KERNAL
|
||||
jump table routines so that you may refer to routines
|
||||
like <TT
|
||||
CLASS="LITERAL"
|
||||
>chrout</TT
|
||||
> and <TT
|
||||
CLASS="LITERAL"
|
||||
>rdtim</TT
|
||||
>
|
||||
by name.
|
||||
</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
> <TT
|
||||
CLASS="LITERAL"
|
||||
>c64header.oph</TT
|
||||
> is an absolutely minimal
|
||||
C64 header program; it contains the one-line BASIC program
|
||||
and nothing else. Smaller programs that do not require more
|
||||
than four bytes of zero page do not need to do any
|
||||
bankswitching or zero page caching and don't need any more
|
||||
than this. The aliases provided
|
||||
in <TT
|
||||
CLASS="LITERAL"
|
||||
>c64kernal.oph</TT
|
||||
> may be useful, but are
|
||||
not included in this header.
|
||||
</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
> <TT
|
||||
CLASS="LITERAL"
|
||||
>c64_0.oph</TT
|
||||
> is suitable for larger and more
|
||||
sophisticated programs. It is an enhancement of the header
|
||||
file developed in the previous chapter. It stores the saved
|
||||
zero page values in the RAM shadowed by the KERNAL ROM, and
|
||||
it also uses a different mechanism for returning to BASIC
|
||||
when done that is more robust in the face of self-modifying
|
||||
programs such as those produced by self-extracting
|
||||
compressed executables or onefiled multipart programs. It is
|
||||
used like the other header files—just include it at
|
||||
the top of your source file and use <TT
|
||||
CLASS="LITERAL"
|
||||
>RTS</TT
|
||||
>
|
||||
to end your program—but programs that use this header
|
||||
file will have all of the zero page from $02-$8F and a
|
||||
contiguous chunk of program RAM from $0800-$CFFF.
|
||||
</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
> <TT
|
||||
CLASS="LITERAL"
|
||||
>libbasic64.oph</TT
|
||||
> is an experimental set of
|
||||
macros and routines to permit the assembly programmer to
|
||||
make use of the software floating point routines provided by
|
||||
BASIC. It is, for obvious reasons, not compatible
|
||||
with <TT
|
||||
CLASS="LITERAL"
|
||||
>c64_0.oph</TT
|
||||
>, because it needs to make
|
||||
use of BASIC's workspace and the ROM itself. If you wish to
|
||||
use this file you should include it near the end of your
|
||||
program.
|
||||
</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
> <TT
|
||||
CLASS="LITERAL"
|
||||
>vic20.oph</TT
|
||||
> is a header that will work for
|
||||
the <I
|
||||
CLASS="EMPHASIS"
|
||||
>unexpanded</I
|
||||
> VIC-20. Memory expansion
|
||||
slots change where BASIC programs load, and since these
|
||||
headers load in the machine language program in as the
|
||||
suffix to a BASIC program, that also changes where they are
|
||||
themselves loaded. There is no trickery with bankswitching
|
||||
ROMs in and out—the VIC-20 does not have enough RAM to
|
||||
gain anything from these techniques.
|
||||
</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
> <TT
|
||||
CLASS="LITERAL"
|
||||
>vic20x.oph</TT
|
||||
> does the same, but for a
|
||||
VIC-20 with one or more memory expansions.
|
||||
</P
|
||||
></LI
|
||||
></UL
|
||||
><DIV
|
||||
CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN520"
|
||||
>Using LIBBASIC64</A
|
||||
></H2
|
||||
><P
|
||||
> The 6502's arithmetic capabilities are rather limited. To
|
||||
counteract this, BASICs of the era did floating point in
|
||||
software and gave BASIC programmers the full suite of
|
||||
arithmetic operations. These operations are largely
|
||||
unavailable to machine language programmers.
|
||||
</P
|
||||
><P
|
||||
> The <TT
|
||||
CLASS="LITERAL"
|
||||
>libbasic64.oph</TT
|
||||
> library is an attempt to
|
||||
address this. It is currently considered highly experimental,
|
||||
but initial results are very promising.
|
||||
</P
|
||||
><P
|
||||
> BASIC stores floating point numbers in a five-byte format, but
|
||||
translates them into a seven-byte format to do actual work in
|
||||
two Floating Point Accumulators (FAC1 and FAC2). Ophis will
|
||||
let you specify 5-byte constants with
|
||||
the <TT
|
||||
CLASS="LITERAL"
|
||||
>.cbmfloat</TT
|
||||
> directive, which takes a
|
||||
string and produces the requisite five-byte value.
|
||||
</P
|
||||
><P
|
||||
> The floating point functions in BASIC all operate on FAC1 and
|
||||
are relatively reliable. The
|
||||
functions <TT
|
||||
CLASS="LITERAL"
|
||||
>abs_fac1</TT
|
||||
>, <TT
|
||||
CLASS="LITERAL"
|
||||
>atn_fac1</TT
|
||||
>, <TT
|
||||
CLASS="LITERAL"
|
||||
>cos_fac1</TT
|
||||
>, <TT
|
||||
CLASS="LITERAL"
|
||||
>exp_fac1</TT
|
||||
>, <TT
|
||||
CLASS="LITERAL"
|
||||
>int_fac1</TT
|
||||
>, <TT
|
||||
CLASS="LITERAL"
|
||||
>log_fac1</TT
|
||||
>, <TT
|
||||
CLASS="LITERAL"
|
||||
>rnd_fac1</TT
|
||||
>, <TT
|
||||
CLASS="LITERAL"
|
||||
>sgn_fac1</TT
|
||||
>, <TT
|
||||
CLASS="LITERAL"
|
||||
>sin_fac1</TT
|
||||
>,
|
||||
and <TT
|
||||
CLASS="LITERAL"
|
||||
>tan_fac1</TT
|
||||
> are all provided. Routines
|
||||
that touch the FACs tend to be extremely finicky. This system
|
||||
defines a set of macros and routines to manage that for you:
|
||||
</P
|
||||
><P
|
||||
></P
|
||||
><UL
|
||||
><LI
|
||||
><P
|
||||
><TT
|
||||
CLASS="LITERAL"
|
||||
>`f_move</TT
|
||||
> <I
|
||||
CLASS="EMPHASIS"
|
||||
>dest, source</I
|
||||
>: Copy a five-byte floating point value from <I
|
||||
CLASS="EMPHASIS"
|
||||
>source</I
|
||||
> to <I
|
||||
CLASS="EMPHASIS"
|
||||
>dest</I
|
||||
>.</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
><TT
|
||||
CLASS="LITERAL"
|
||||
>`fp_load</TT
|
||||
> <I
|
||||
CLASS="EMPHASIS"
|
||||
>src</I
|
||||
>: Loads FAC1 with the floating point constant specified by <I
|
||||
CLASS="EMPHASIS"
|
||||
>src</I
|
||||
>.</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
><TT
|
||||
CLASS="LITERAL"
|
||||
>`fp_store</TT
|
||||
> <I
|
||||
CLASS="EMPHASIS"
|
||||
>dest</I
|
||||
>: Saves the value of FAC1 to the named memory location.</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
><TT
|
||||
CLASS="LITERAL"
|
||||
>`fp_print</TT
|
||||
> <I
|
||||
CLASS="EMPHASIS"
|
||||
>src</I
|
||||
>: Prints out the value of FAC1 to the screen. You may want to call <TT
|
||||
CLASS="LITERAL"
|
||||
>int_fac1</TT
|
||||
> first to round it. Unlike BASIC's <TT
|
||||
CLASS="LITERAL"
|
||||
>PRINT</TT
|
||||
> statement, this routine will not bracket the number with blanks.</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
><TT
|
||||
CLASS="LITERAL"
|
||||
>`fp_read</TT
|
||||
> <I
|
||||
CLASS="EMPHASIS"
|
||||
>ptr</I
|
||||
>: Attempts to convert a string to a floating point value in FAC1, in a manner similar to BASIC's <TT
|
||||
CLASS="LITERAL"
|
||||
>VAL</TT
|
||||
> function.</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
><TT
|
||||
CLASS="LITERAL"
|
||||
>`fp_add</TT
|
||||
> <I
|
||||
CLASS="EMPHASIS"
|
||||
>operand</I
|
||||
>: Adds the operand to FAC1.</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
><TT
|
||||
CLASS="LITERAL"
|
||||
>`fp_subtract</TT
|
||||
> <I
|
||||
CLASS="EMPHASIS"
|
||||
>operand</I
|
||||
>: Subtracts the operand from FAC1.</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
><TT
|
||||
CLASS="LITERAL"
|
||||
>`fp_multiply</TT
|
||||
> <I
|
||||
CLASS="EMPHASIS"
|
||||
>operand</I
|
||||
>: Multiplies the operand by FAC1.</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
><TT
|
||||
CLASS="LITERAL"
|
||||
>`fp_divide</TT
|
||||
> <I
|
||||
CLASS="EMPHASIS"
|
||||
>operand</I
|
||||
>: Divides FAC1 by the operand.</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
><TT
|
||||
CLASS="LITERAL"
|
||||
>`fp_pow</TT
|
||||
> <I
|
||||
CLASS="EMPHASIS"
|
||||
>operand</I
|
||||
>: Raises FAC1 to the operand's power.</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
><TT
|
||||
CLASS="LITERAL"
|
||||
>`fp_and</TT
|
||||
> <I
|
||||
CLASS="EMPHASIS"
|
||||
>operand</I
|
||||
>: Juggles floating point-to-integer conversions to do a bitwise AND.</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
><TT
|
||||
CLASS="LITERAL"
|
||||
>`fp_or</TT
|
||||
> <I
|
||||
CLASS="EMPHASIS"
|
||||
>operand</I
|
||||
>: Likewise, but for OR.</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
><TT
|
||||
CLASS="LITERAL"
|
||||
>jsr randomize</TT
|
||||
>: Calls RND(-TI) and leaves the (useless) result in FAC1. This seeds BASIC's random number generator with the number of clock ticks since poweron.</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
><TT
|
||||
CLASS="LITERAL"
|
||||
>jsr rnd</TT
|
||||
>: Calls RND(1) and leaves the result in FAC1, providing a random number between 0 and 1.</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
><TT
|
||||
CLASS="LITERAL"
|
||||
>jsr fac1_sign</TT
|
||||
>: Loads the SGN(FAC1) into the accumulator. This will be $01 if the accumulator is positive, $00 if it is zero, and $FF if it is negative. This routine is useful for branching based on the result of a floating point computation.</P
|
||||
></LI
|
||||
></UL
|
||||
><P
|
||||
> Other functions are available, but their preconditions are
|
||||
hazier. The source file is commented with the current state of
|
||||
knowledge.
|
||||
</P
|
||||
><P
|
||||
> To see some of these functions in action,
|
||||
the <TT
|
||||
CLASS="LITERAL"
|
||||
>examples</TT
|
||||
> directory includes a
|
||||
program <TT
|
||||
CLASS="LITERAL"
|
||||
>kinematics.oph</TT
|
||||
>, which reads numbers
|
||||
in from input and computes trajectories based on them.
|
||||
</P
|
||||
></DIV
|
||||
></DIV
|
||||
></DIV
|
||||
><DIV
|
||||
CLASS="NAVFOOTER"
|
||||
><HR
|
||||
ALIGN="LEFT"
|
||||
WIDTH="100%"><TABLE
|
||||
SUMMARY="Footer navigation table"
|
||||
WIDTH="100%"
|
||||
BORDER="0"
|
||||
CELLPADDING="0"
|
||||
CELLSPACING="0"
|
||||
><TR
|
||||
><TD
|
||||
WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x471.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
><TD
|
||||
WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="book1.html"
|
||||
ACCESSKEY="H"
|
||||
>Home</A
|
||||
></TD
|
||||
><TD
|
||||
WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x606.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
>The Solution</TD
|
||||
><TD
|
||||
WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="p51.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
||||
><TD
|
||||
WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
>The Nintendo Entertainment System</TD
|
||||
></TR
|
||||
></TABLE
|
||||
></DIV
|
||||
></BODY
|
||||
></HTML
|
||||
>
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Using the Ophis Assembler"
|
||||
HREF="p50.html"><LINK
|
||||
HREF="p51.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Using the Ophis Assembler"
|
||||
HREF="p50.html"><LINK
|
||||
HREF="p51.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Producing Commodore 64 programs"
|
||||
HREF="x71.html"></HEAD
|
||||
HREF="x72.html"></HEAD
|
||||
><BODY
|
||||
CLASS="CHAPTER"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="p50.html"
|
||||
HREF="p51.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x71.html"
|
||||
HREF="x72.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -110,7 +110,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN68"
|
||||
NAME="AEN69"
|
||||
>A note on numeric notation</A
|
||||
></H1
|
||||
><P
|
||||
@ -136,7 +136,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="p50.html"
|
||||
HREF="p51.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -154,7 +154,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x71.html"
|
||||
HREF="x72.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -170,7 +170,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="p50.html"
|
||||
HREF="p51.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="To HLL and Back"
|
||||
HREF="p481.html"><LINK
|
||||
HREF="p618.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="To HLL and Back"
|
||||
HREF="p481.html"><LINK
|
||||
HREF="p618.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="The solution"
|
||||
HREF="x498.html"></HEAD
|
||||
HREF="x635.html"></HEAD
|
||||
><BODY
|
||||
CLASS="CHAPTER"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="p481.html"
|
||||
HREF="p618.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x498.html"
|
||||
HREF="x635.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -84,7 +84,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN489"
|
||||
NAME="AEN626"
|
||||
>The problem</A
|
||||
></H1
|
||||
><P
|
||||
@ -134,7 +134,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="p481.html"
|
||||
HREF="p618.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -152,7 +152,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x498.html"
|
||||
HREF="x635.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -168,7 +168,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="p481.html"
|
||||
HREF="p618.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="To HLL and Back"
|
||||
HREF="p481.html"><LINK
|
||||
HREF="p618.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="16-bit comparisons"
|
||||
HREF="x537.html"><LINK
|
||||
HREF="x674.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="The stack"
|
||||
HREF="x597.html"></HEAD
|
||||
HREF="x734.html"></HEAD
|
||||
><BODY
|
||||
CLASS="CHAPTER"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x537.html"
|
||||
HREF="x674.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x597.html"
|
||||
HREF="x734.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -96,7 +96,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN548"
|
||||
NAME="AEN685"
|
||||
>Control constructs</A
|
||||
></H1
|
||||
><DIV
|
||||
@ -104,7 +104,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN550"
|
||||
NAME="AEN687"
|
||||
>Branches: <TT
|
||||
CLASS="LITERAL"
|
||||
>if x then y else z</TT
|
||||
@ -188,7 +188,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN561"
|
||||
NAME="AEN698"
|
||||
>Free loops: <TT
|
||||
CLASS="LITERAL"
|
||||
>while x do y</TT
|
||||
@ -264,7 +264,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN573"
|
||||
NAME="AEN710"
|
||||
>Bounded loops: <TT
|
||||
CLASS="LITERAL"
|
||||
>for i = x to y do z</TT
|
||||
@ -461,7 +461,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x537.html"
|
||||
HREF="x674.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -479,7 +479,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x597.html"
|
||||
HREF="x734.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -495,7 +495,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="p481.html"
|
||||
HREF="p618.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="To HLL and Back"
|
||||
HREF="p481.html"><LINK
|
||||
HREF="p618.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="A modest example: Insertion sort on linked lists"
|
||||
HREF="x719.html"><LINK
|
||||
HREF="x856.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Pointer arithmetic"
|
||||
HREF="x782.html"></HEAD
|
||||
HREF="x919.html"></HEAD
|
||||
><BODY
|
||||
CLASS="CHAPTER"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x719.html"
|
||||
HREF="x856.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x782.html"
|
||||
HREF="x919.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -79,7 +79,7 @@ NAME="HLL3"
|
||||
> The basics of pointers versus cursors (or, at the 6502 assembler
|
||||
level, the indirect indexed addressing mode versus the absolute
|
||||
indexed ones) were covered in <A
|
||||
HREF="c543.html"
|
||||
HREF="c680.html"
|
||||
>the Chapter called <I
|
||||
>Structured Programming</I
|
||||
></A
|
||||
@ -96,7 +96,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN753"
|
||||
NAME="AEN890"
|
||||
>The absolute basics</A
|
||||
></H1
|
||||
><P
|
||||
@ -121,7 +121,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN758"
|
||||
NAME="AEN895"
|
||||
>The simplest example</A
|
||||
></H2
|
||||
><P
|
||||
@ -241,7 +241,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x719.html"
|
||||
HREF="x856.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -259,7 +259,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x782.html"
|
||||
HREF="x919.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -275,7 +275,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="p481.html"
|
||||
HREF="p618.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="To HLL and Back"
|
||||
HREF="p481.html"><LINK
|
||||
HREF="p618.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Conclusion"
|
||||
HREF="x813.html"><LINK
|
||||
HREF="x950.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="A quick digression on how subroutines work"
|
||||
HREF="x836.html"></HEAD
|
||||
HREF="x973.html"></HEAD
|
||||
><BODY
|
||||
CLASS="CHAPTER"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x813.html"
|
||||
HREF="x950.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x836.html"
|
||||
HREF="x973.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -72,7 +72,7 @@ WIDTH="100%"></DIV
|
||||
CLASS="CHAPTER"
|
||||
><H1
|
||||
><A
|
||||
NAME="AEN816"
|
||||
NAME="AEN953"
|
||||
></A
|
||||
>Functionals</H1
|
||||
><P
|
||||
@ -93,7 +93,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN821"
|
||||
NAME="AEN958"
|
||||
>Function Pointers</A
|
||||
></H1
|
||||
><P
|
||||
@ -169,7 +169,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x813.html"
|
||||
HREF="x950.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -187,7 +187,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x836.html"
|
||||
HREF="x973.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -203,7 +203,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="p481.html"
|
||||
HREF="p618.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -14,7 +14,7 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Getting a copy of Ophis"
|
||||
HREF="x29.html"></HEAD
|
||||
HREF="x30.html"></HEAD
|
||||
><BODY
|
||||
CLASS="PREFACE"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -56,7 +56,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x29.html"
|
||||
HREF="x30.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -77,8 +77,8 @@ NAME="AEN10"
|
||||
chip used in the vast majority of the classic 8-bit computers and
|
||||
consoles. Its primary design goals are code readability and output
|
||||
flexibility - Ophis has successfully been used to create programs
|
||||
for the Nintendo Entertainment System, the Atari 2600, and the
|
||||
Commodore 64.
|
||||
for the Nintendo Entertainment System, the Atari 2600, and various
|
||||
8-bit Commodore machines.
|
||||
</P
|
||||
><P
|
||||
> Ophis's syntax is noticably different from the formats
|
||||
@ -159,6 +159,12 @@ CLASS="footnote"
|
||||
toolchains. It was this process that led to Ophis 2.
|
||||
</P
|
||||
><P
|
||||
> After its release Ophis 2 was picked up by a number of
|
||||
developers work with actual hardware from the period, including
|
||||
prototype machines that never saw production. Some of their
|
||||
contributions have refined the code generators for version 2.1.
|
||||
</P
|
||||
><P
|
||||
> This is an updated edition of <I
|
||||
CLASS="EMPHASIS"
|
||||
>Programming With
|
||||
@ -243,7 +249,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x29.html"
|
||||
HREF="x30.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
|
@ -11,10 +11,10 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="About the examples"
|
||||
HREF="x41.html"><LINK
|
||||
HREF="x42.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="The basics"
|
||||
HREF="c55.html"></HEAD
|
||||
HREF="c56.html"></HEAD
|
||||
><BODY
|
||||
CLASS="PART"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -42,7 +42,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x41.html"
|
||||
HREF="x42.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -56,7 +56,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c55.html"
|
||||
HREF="c56.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -68,7 +68,7 @@ WIDTH="100%"></DIV
|
||||
><DIV
|
||||
CLASS="PART"
|
||||
><A
|
||||
NAME="AEN50"
|
||||
NAME="AEN51"
|
||||
></A
|
||||
><DIV
|
||||
CLASS="TITLEPAGE"
|
||||
@ -78,7 +78,7 @@ CLASS="TITLE"
|
||||
><DIV
|
||||
CLASS="PARTINTRO"
|
||||
><A
|
||||
NAME="AEN52"
|
||||
NAME="AEN53"
|
||||
></A
|
||||
><P
|
||||
> The chapters in Part 1 are a tutorial guiding you through the
|
||||
@ -99,39 +99,44 @@ CLASS="TOC"
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="c55.html"
|
||||
HREF="c56.html"
|
||||
>The basics</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="c223.html"
|
||||
HREF="c236.html"
|
||||
>Labels and aliases</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="c259.html"
|
||||
HREF="c273.html"
|
||||
>Headers, Libraries, and Macros</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="c319.html"
|
||||
HREF="c333.html"
|
||||
>Character maps</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="c353.html"
|
||||
HREF="c367.html"
|
||||
>Local variables and memory segments</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="c395.html"
|
||||
HREF="c409.html"
|
||||
>Expressions</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="c443.html"
|
||||
HREF="c460.html"
|
||||
>Advanced Memory Segments</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="c489.html"
|
||||
>Platform-Specific Techniques</A
|
||||
></DT
|
||||
></DL
|
||||
></DIV
|
||||
></DIV
|
||||
@ -152,7 +157,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x41.html"
|
||||
HREF="x42.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -170,7 +175,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c55.html"
|
||||
HREF="c56.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
@ -10,11 +10,11 @@ REL="HOME"
|
||||
TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Where to go from here"
|
||||
HREF="x476.html"><LINK
|
||||
TITLE="The Atari 2600 VCS"
|
||||
HREF="x611.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="The Second Step"
|
||||
HREF="c486.html"></HEAD
|
||||
HREF="c623.html"></HEAD
|
||||
><BODY
|
||||
CLASS="PART"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -42,7 +42,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x476.html"
|
||||
HREF="x611.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -56,7 +56,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c486.html"
|
||||
HREF="c623.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -68,7 +68,7 @@ WIDTH="100%"></DIV
|
||||
><DIV
|
||||
CLASS="PART"
|
||||
><A
|
||||
NAME="AEN481"
|
||||
NAME="AEN618"
|
||||
></A
|
||||
><DIV
|
||||
CLASS="TITLEPAGE"
|
||||
@ -78,7 +78,7 @@ CLASS="TITLE"
|
||||
><DIV
|
||||
CLASS="PARTINTRO"
|
||||
><A
|
||||
NAME="AEN483"
|
||||
NAME="AEN620"
|
||||
></A
|
||||
><P
|
||||
> This is a compilation of an essay series I wrote from
|
||||
@ -100,27 +100,27 @@ CLASS="TOC"
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="c486.html"
|
||||
HREF="c623.html"
|
||||
>The Second Step</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="c543.html"
|
||||
HREF="c680.html"
|
||||
>Structured Programming</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="c748.html"
|
||||
HREF="c885.html"
|
||||
>Pointers and Indirection</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="c816.html"
|
||||
HREF="c953.html"
|
||||
>Functionals</A
|
||||
></DT
|
||||
><DT
|
||||
><A
|
||||
HREF="c900.html"
|
||||
HREF="c1037.html"
|
||||
>Call Stacks</A
|
||||
></DT
|
||||
></DL
|
||||
@ -143,7 +143,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x476.html"
|
||||
HREF="x611.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -161,7 +161,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c486.html"
|
||||
HREF="c623.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -171,7 +171,7 @@ ACCESSKEY="N"
|
||||
WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
>Where to go from here</TD
|
||||
>The Atari 2600 VCS</TD
|
||||
><TD
|
||||
WIDTH="34%"
|
||||
ALIGN="center"
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Functionals"
|
||||
HREF="c816.html"><LINK
|
||||
HREF="c953.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Dispatch-on-type and Data-Directed Assembler"
|
||||
HREF="x855.html"><LINK
|
||||
HREF="x992.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="A final reminder"
|
||||
HREF="x892.html"></HEAD
|
||||
HREF="x1029.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x855.html"
|
||||
HREF="x992.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x892.html"
|
||||
HREF="x1029.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN871"
|
||||
NAME="AEN1008"
|
||||
>VTables and Object-Oriented Assembler</A
|
||||
></H1
|
||||
><P
|
||||
@ -184,7 +184,7 @@ CLASS="LITERAL"
|
||||
>invokevirtual</TT
|
||||
>, probably in some global
|
||||
argument array somewhere as discussed back in <A
|
||||
HREF="c543.html"
|
||||
HREF="c680.html"
|
||||
>the Chapter called <I
|
||||
>Structured Programming</I
|
||||
></A
|
||||
@ -207,7 +207,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x855.html"
|
||||
HREF="x992.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -225,7 +225,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x892.html"
|
||||
HREF="x1029.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -241,7 +241,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c816.html"
|
||||
HREF="c953.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
224
book/x1018.html
224
book/x1018.html
@ -1,224 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML
|
||||
><HEAD
|
||||
><TITLE
|
||||
>c64_0.oph</TITLE
|
||||
><META
|
||||
NAME="GENERATOR"
|
||||
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
|
||||
REL="HOME"
|
||||
TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Example Programs"
|
||||
HREF="a975.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="hello6.oph"
|
||||
HREF="x1014.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="hello7.oph"
|
||||
HREF="x1022.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
TEXT="#000000"
|
||||
LINK="#0000FF"
|
||||
VLINK="#840084"
|
||||
ALINK="#0000FF"
|
||||
><DIV
|
||||
CLASS="NAVHEADER"
|
||||
><TABLE
|
||||
SUMMARY="Header navigation table"
|
||||
WIDTH="100%"
|
||||
BORDER="0"
|
||||
CELLPADDING="0"
|
||||
CELLSPACING="0"
|
||||
><TR
|
||||
><TH
|
||||
COLSPAN="3"
|
||||
ALIGN="center"
|
||||
>Programming with Ophis</TH
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1014.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
><TD
|
||||
WIDTH="80%"
|
||||
ALIGN="center"
|
||||
VALIGN="bottom"
|
||||
>Example Programs</TD
|
||||
><TD
|
||||
WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1022.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><HR
|
||||
ALIGN="LEFT"
|
||||
WIDTH="100%"></DIV
|
||||
><DIV
|
||||
CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="C64-2-SRC"
|
||||
><TT
|
||||
CLASS="FILENAME"
|
||||
>c64_0.oph</TT
|
||||
></A
|
||||
></H1
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
BGCOLOR="#E0E0E0"
|
||||
WIDTH="100%"
|
||||
><TR
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;;
|
||||
;; Commodore 64 Basic Runtime File
|
||||
;;
|
||||
;; Include this at the TOP of your C64 program, and it will handle
|
||||
;; hiding away the BASIC ROM and data and restoring it at the end.
|
||||
;;
|
||||
;; You will have a contiguous block of RAM from $0800 to $CF81, and
|
||||
;; Zero Page access from $02 to $7F in the segment "zp".
|
||||
|
||||
.word $0801
|
||||
.org $0801
|
||||
|
||||
; BASIC program that just calls our machine language code
|
||||
.scope
|
||||
.word _next, 10 ; Next line and current line number
|
||||
.byte $9e," 2062",0 ; SYS 2062
|
||||
_next: .word 0 ; End of program
|
||||
.scend
|
||||
|
||||
.data zp ; Zero Page memory segment.
|
||||
.org $0002
|
||||
|
||||
.text
|
||||
|
||||
.scope
|
||||
; Cache BASIC zero page at top of available RAM
|
||||
ldx #$7E
|
||||
* lda $01, x
|
||||
sta $CF81, x
|
||||
dex
|
||||
bne -
|
||||
|
||||
; Swap out the BASIC ROM for RAM
|
||||
lda $01
|
||||
and #$fe
|
||||
ora #$06
|
||||
sta $01
|
||||
|
||||
; Run the real program
|
||||
jsr _main
|
||||
|
||||
; Restore BASIC ROM
|
||||
lda $01
|
||||
ora #$07
|
||||
sta $01
|
||||
|
||||
; Restore BASIC zero page
|
||||
ldx #$7E
|
||||
* lda $CF81, x
|
||||
sta $01, x
|
||||
dex
|
||||
bne -
|
||||
|
||||
; Back to BASIC
|
||||
rts
|
||||
|
||||
_main:
|
||||
; Program follows...
|
||||
.scend</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
></DIV
|
||||
><DIV
|
||||
CLASS="NAVFOOTER"
|
||||
><HR
|
||||
ALIGN="LEFT"
|
||||
WIDTH="100%"><TABLE
|
||||
SUMMARY="Footer navigation table"
|
||||
WIDTH="100%"
|
||||
BORDER="0"
|
||||
CELLPADDING="0"
|
||||
CELLSPACING="0"
|
||||
><TR
|
||||
><TD
|
||||
WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1014.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
><TD
|
||||
WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="book1.html"
|
||||
ACCESSKEY="H"
|
||||
>Home</A
|
||||
></TD
|
||||
><TD
|
||||
WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1022.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><TT
|
||||
CLASS="FILENAME"
|
||||
>hello6.oph</TT
|
||||
></TD
|
||||
><TD
|
||||
WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a975.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
||||
><TD
|
||||
WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><TT
|
||||
CLASS="FILENAME"
|
||||
>hello7.oph</TT
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
></DIV
|
||||
></BODY
|
||||
></HTML
|
||||
>
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Functionals"
|
||||
HREF="c816.html"><LINK
|
||||
HREF="c953.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="VTables and Object-Oriented Assembler"
|
||||
HREF="x871.html"><LINK
|
||||
HREF="x1008.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Call Stacks"
|
||||
HREF="c900.html"></HEAD
|
||||
HREF="c1037.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x871.html"
|
||||
HREF="x1008.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c900.html"
|
||||
HREF="c1037.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN892"
|
||||
NAME="AEN1029"
|
||||
>A final reminder</A
|
||||
></H1
|
||||
><P
|
||||
@ -127,7 +127,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x871.html"
|
||||
HREF="x1008.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -145,7 +145,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c900.html"
|
||||
HREF="c1037.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -161,7 +161,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c816.html"
|
||||
HREF="c953.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Call Stacks"
|
||||
HREF="c900.html"><LINK
|
||||
HREF="c1037.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Call Stacks"
|
||||
HREF="c900.html"><LINK
|
||||
HREF="c1037.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Example: Fibonnacci Numbers"
|
||||
HREF="x967.html"></HEAD
|
||||
HREF="x1104.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c900.html"
|
||||
HREF="c1037.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x967.html"
|
||||
HREF="x1104.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN915"
|
||||
NAME="AEN1052"
|
||||
>Our Goals</A
|
||||
></H1
|
||||
><P
|
||||
@ -285,7 +285,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c900.html"
|
||||
HREF="c1037.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -303,7 +303,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x967.html"
|
||||
HREF="x1104.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -319,7 +319,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c900.html"
|
||||
HREF="c1037.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Call Stacks"
|
||||
HREF="c900.html"><LINK
|
||||
HREF="c1037.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Our Goals"
|
||||
HREF="x915.html"><LINK
|
||||
HREF="x1052.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Example Programs"
|
||||
HREF="a975.html"></HEAD
|
||||
HREF="a1112.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x915.html"
|
||||
HREF="x1052.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="a975.html"
|
||||
HREF="a1112.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN967"
|
||||
NAME="AEN1104"
|
||||
>Example: Fibonnacci Numbers</A
|
||||
></H1
|
||||
><P
|
||||
@ -143,7 +143,7 @@ _done: lda #$03
|
||||
><P
|
||||
> The full application, which deals with interfacing with CBM BASIC
|
||||
and handles console I/O and such, is in <A
|
||||
HREF="x1030.html"
|
||||
HREF="x1163.html"
|
||||
><I
|
||||
><I
|
||||
>fibonacci.oph</I
|
||||
@ -168,7 +168,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x915.html"
|
||||
HREF="x1052.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -186,7 +186,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a975.html"
|
||||
HREF="a1112.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -202,7 +202,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c900.html"
|
||||
HREF="c1037.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Example Programs"
|
||||
HREF="a975.html"><LINK
|
||||
HREF="a1112.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Example Programs"
|
||||
HREF="a975.html"><LINK
|
||||
HREF="a1112.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="c64-1.oph"
|
||||
HREF="x986.html"></HEAD
|
||||
HREF="x1123.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="a975.html"
|
||||
HREF="a1112.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x986.html"
|
||||
HREF="x1123.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -130,7 +130,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a975.html"
|
||||
HREF="a1112.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -148,7 +148,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x986.html"
|
||||
HREF="x1123.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -164,7 +164,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a975.html"
|
||||
HREF="a1112.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Example Programs"
|
||||
HREF="a975.html"><LINK
|
||||
HREF="a1112.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="hello2.oph"
|
||||
HREF="x982.html"><LINK
|
||||
HREF="x1119.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="c64kernal.oph"
|
||||
HREF="x990.html"></HEAD
|
||||
HREF="x1127.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x982.html"
|
||||
HREF="x1119.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x990.html"
|
||||
HREF="x1127.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -119,7 +119,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x982.html"
|
||||
HREF="x1119.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -137,7 +137,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x990.html"
|
||||
HREF="x1127.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -156,7 +156,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a975.html"
|
||||
HREF="a1112.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Example Programs"
|
||||
HREF="a975.html"><LINK
|
||||
HREF="a1112.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="c64-1.oph"
|
||||
HREF="x986.html"><LINK
|
||||
HREF="x1123.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="hello3.oph"
|
||||
HREF="x994.html"></HEAD
|
||||
HREF="x1131.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x986.html"
|
||||
HREF="x1123.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x994.html"
|
||||
HREF="x1131.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -174,7 +174,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x986.html"
|
||||
HREF="x1123.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -192,7 +192,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x994.html"
|
||||
HREF="x1131.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -211,7 +211,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a975.html"
|
||||
HREF="a1112.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Example Programs"
|
||||
HREF="a975.html"><LINK
|
||||
HREF="a1112.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="c64kernal.oph"
|
||||
HREF="x990.html"><LINK
|
||||
HREF="x1127.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="hello4a.oph"
|
||||
HREF="x998.html"></HEAD
|
||||
HREF="x1135.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x990.html"
|
||||
HREF="x1127.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x998.html"
|
||||
HREF="x1135.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -153,7 +153,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x990.html"
|
||||
HREF="x1127.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -171,7 +171,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x998.html"
|
||||
HREF="x1135.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -190,7 +190,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a975.html"
|
||||
HREF="a1112.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Example Programs"
|
||||
HREF="a975.html"><LINK
|
||||
HREF="a1112.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="hello3.oph"
|
||||
HREF="x994.html"><LINK
|
||||
HREF="x1131.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="hello4b.oph"
|
||||
HREF="x1002.html"></HEAD
|
||||
HREF="x1139.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x994.html"
|
||||
HREF="x1131.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1002.html"
|
||||
HREF="x1139.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -174,7 +174,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x994.html"
|
||||
HREF="x1131.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -192,7 +192,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1002.html"
|
||||
HREF="x1139.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -211,7 +211,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a975.html"
|
||||
HREF="a1112.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Example Programs"
|
||||
HREF="a975.html"><LINK
|
||||
HREF="a1112.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="hello4a.oph"
|
||||
HREF="x998.html"><LINK
|
||||
HREF="x1135.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="hello4c.oph"
|
||||
HREF="x1006.html"></HEAD
|
||||
HREF="x1143.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x998.html"
|
||||
HREF="x1135.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1006.html"
|
||||
HREF="x1143.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -176,7 +176,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x998.html"
|
||||
HREF="x1135.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -194,7 +194,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1006.html"
|
||||
HREF="x1143.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -213,7 +213,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a975.html"
|
||||
HREF="a1112.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Example Programs"
|
||||
HREF="a975.html"><LINK
|
||||
HREF="a1112.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="hello4b.oph"
|
||||
HREF="x1002.html"><LINK
|
||||
HREF="x1139.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="hello5.oph"
|
||||
HREF="x1010.html"></HEAD
|
||||
HREF="x1147.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1002.html"
|
||||
HREF="x1139.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1010.html"
|
||||
HREF="x1147.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -179,7 +179,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1002.html"
|
||||
HREF="x1139.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -197,7 +197,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1010.html"
|
||||
HREF="x1147.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -216,7 +216,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a975.html"
|
||||
HREF="a1112.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Example Programs"
|
||||
HREF="a975.html"><LINK
|
||||
HREF="a1112.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="hello4c.oph"
|
||||
HREF="x1006.html"><LINK
|
||||
HREF="x1143.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="hello6.oph"
|
||||
HREF="x1014.html"></HEAD
|
||||
HREF="x1151.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1006.html"
|
||||
HREF="x1143.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1014.html"
|
||||
HREF="x1151.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -183,7 +183,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1006.html"
|
||||
HREF="x1143.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -201,7 +201,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1014.html"
|
||||
HREF="x1151.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -220,7 +220,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a975.html"
|
||||
HREF="a1112.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Example Programs"
|
||||
HREF="a975.html"><LINK
|
||||
HREF="a1112.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="hello5.oph"
|
||||
HREF="x1010.html"><LINK
|
||||
HREF="x1147.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="c64_0.oph"
|
||||
HREF="x1018.html"></HEAD
|
||||
TITLE="hello7.oph"
|
||||
HREF="x1155.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1010.html"
|
||||
HREF="x1147.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1018.html"
|
||||
HREF="x1155.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -210,7 +210,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1010.html"
|
||||
HREF="x1147.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -228,7 +228,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1018.html"
|
||||
HREF="x1155.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -247,7 +247,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a975.html"
|
||||
HREF="a1112.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
||||
@ -257,7 +257,7 @@ ALIGN="right"
|
||||
VALIGN="top"
|
||||
><TT
|
||||
CLASS="FILENAME"
|
||||
>c64_0.oph</TT
|
||||
>hello7.oph</TT
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Example Programs"
|
||||
HREF="a975.html"><LINK
|
||||
HREF="a1112.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="c64_0.oph"
|
||||
HREF="x1018.html"><LINK
|
||||
TITLE="hello6.oph"
|
||||
HREF="x1151.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="structuredemo.oph"
|
||||
HREF="x1026.html"></HEAD
|
||||
HREF="x1159.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1018.html"
|
||||
HREF="x1151.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1026.html"
|
||||
HREF="x1159.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -205,7 +205,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1018.html"
|
||||
HREF="x1151.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -223,7 +223,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1026.html"
|
||||
HREF="x1159.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -235,14 +235,14 @@ ALIGN="left"
|
||||
VALIGN="top"
|
||||
><TT
|
||||
CLASS="FILENAME"
|
||||
>c64_0.oph</TT
|
||||
>hello6.oph</TT
|
||||
></TD
|
||||
><TD
|
||||
WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a975.html"
|
||||
HREF="a1112.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Example Programs"
|
||||
HREF="a975.html"><LINK
|
||||
HREF="a1112.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="hello7.oph"
|
||||
HREF="x1022.html"><LINK
|
||||
HREF="x1155.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="fibonacci.oph"
|
||||
HREF="x1030.html"></HEAD
|
||||
HREF="x1163.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1022.html"
|
||||
HREF="x1155.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1030.html"
|
||||
HREF="x1163.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -338,7 +338,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1022.html"
|
||||
HREF="x1155.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -356,7 +356,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1030.html"
|
||||
HREF="x1163.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -375,7 +375,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a975.html"
|
||||
HREF="a1112.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Example Programs"
|
||||
HREF="a975.html"><LINK
|
||||
HREF="a1112.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="structuredemo.oph"
|
||||
HREF="x1026.html"><LINK
|
||||
HREF="x1159.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Ophis Command Reference"
|
||||
HREF="a1034.html"></HEAD
|
||||
HREF="a1167.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1026.html"
|
||||
HREF="x1159.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="a1034.html"
|
||||
HREF="a1167.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -320,7 +320,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1026.html"
|
||||
HREF="x1159.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -338,7 +338,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a1034.html"
|
||||
HREF="a1167.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -357,7 +357,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a975.html"
|
||||
HREF="a1112.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Ophis Command Reference"
|
||||
HREF="a1034.html"><LINK
|
||||
HREF="a1167.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Ophis Command Reference"
|
||||
HREF="a1034.html"><LINK
|
||||
HREF="a1167.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Compound Arguments"
|
||||
HREF="x1149.html"></HEAD
|
||||
HREF="x1282.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="a1034.html"
|
||||
HREF="a1167.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1149.html"
|
||||
HREF="x1282.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN1101"
|
||||
NAME="AEN1234"
|
||||
>Basic arguments</A
|
||||
></H1
|
||||
><P
|
||||
@ -85,7 +85,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN1104"
|
||||
NAME="AEN1237"
|
||||
>Numeric types</A
|
||||
></H2
|
||||
><P
|
||||
@ -148,7 +148,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN1127"
|
||||
NAME="AEN1260"
|
||||
>Label types</A
|
||||
></H2
|
||||
><P
|
||||
@ -204,7 +204,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN1140"
|
||||
NAME="AEN1273"
|
||||
>String types</A
|
||||
></H2
|
||||
><P
|
||||
@ -258,7 +258,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a1034.html"
|
||||
HREF="a1167.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -276,7 +276,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1149.html"
|
||||
HREF="x1282.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -292,7 +292,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a1034.html"
|
||||
HREF="a1167.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Ophis Command Reference"
|
||||
HREF="a1034.html"><LINK
|
||||
HREF="a1167.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Basic arguments"
|
||||
HREF="x1101.html"><LINK
|
||||
HREF="x1234.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Memory Model"
|
||||
HREF="x1176.html"></HEAD
|
||||
HREF="x1309.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1101.html"
|
||||
HREF="x1234.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1176.html"
|
||||
HREF="x1309.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN1149"
|
||||
NAME="AEN1282"
|
||||
>Compound Arguments</A
|
||||
></H1
|
||||
><P
|
||||
@ -161,7 +161,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1101.html"
|
||||
HREF="x1234.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -179,7 +179,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1176.html"
|
||||
HREF="x1309.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -195,7 +195,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a1034.html"
|
||||
HREF="a1167.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Ophis Command Reference"
|
||||
HREF="a1034.html"><LINK
|
||||
HREF="a1167.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Compound Arguments"
|
||||
HREF="x1149.html"><LINK
|
||||
HREF="x1282.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Macros"
|
||||
HREF="x1221.html"></HEAD
|
||||
HREF="x1354.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1149.html"
|
||||
HREF="x1282.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1221.html"
|
||||
HREF="x1354.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN1176"
|
||||
NAME="AEN1309"
|
||||
>Memory Model</A
|
||||
></H1
|
||||
><P
|
||||
@ -88,7 +88,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN1179"
|
||||
NAME="AEN1312"
|
||||
>Basic PC tracking</A
|
||||
></H2
|
||||
><P
|
||||
@ -127,7 +127,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN1188"
|
||||
NAME="AEN1321"
|
||||
>Basic Segmentation simulation</A
|
||||
></H2
|
||||
><P
|
||||
@ -243,7 +243,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN1212"
|
||||
NAME="AEN1345"
|
||||
>General Segmentation Simulation</A
|
||||
></H2
|
||||
><P
|
||||
@ -322,7 +322,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1149.html"
|
||||
HREF="x1282.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -340,7 +340,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1221.html"
|
||||
HREF="x1354.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -356,7 +356,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a1034.html"
|
||||
HREF="a1167.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Ophis Command Reference"
|
||||
HREF="a1034.html"><LINK
|
||||
HREF="a1167.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Memory Model"
|
||||
HREF="x1176.html"><LINK
|
||||
HREF="x1309.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Assembler directives"
|
||||
HREF="x1261.html"></HEAD
|
||||
HREF="x1394.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1176.html"
|
||||
HREF="x1309.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1261.html"
|
||||
HREF="x1394.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN1221"
|
||||
NAME="AEN1354"
|
||||
>Macros</A
|
||||
></H1
|
||||
><P
|
||||
@ -92,7 +92,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN1225"
|
||||
NAME="AEN1358"
|
||||
>Defining Macros</A
|
||||
></H2
|
||||
><P
|
||||
@ -128,7 +128,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN1231"
|
||||
NAME="AEN1364"
|
||||
>Invoking Macros</A
|
||||
></H2
|
||||
><P
|
||||
@ -175,7 +175,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN1239"
|
||||
NAME="AEN1372"
|
||||
>Passing Arguments to Macros</A
|
||||
></H2
|
||||
><P
|
||||
@ -234,7 +234,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN1249"
|
||||
NAME="AEN1382"
|
||||
>Features and Restrictions of the Ophis Macro Model</A
|
||||
></H2
|
||||
><P
|
||||
@ -307,7 +307,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1176.html"
|
||||
HREF="x1309.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -325,7 +325,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1261.html"
|
||||
HREF="x1394.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -341,7 +341,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a1034.html"
|
||||
HREF="a1167.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,10 +11,10 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Ophis Command Reference"
|
||||
HREF="a1034.html"><LINK
|
||||
HREF="a1167.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Macros"
|
||||
HREF="x1221.html"></HEAD
|
||||
HREF="x1354.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -42,7 +42,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x1221.html"
|
||||
HREF="x1354.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -66,7 +66,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN1261"
|
||||
NAME="AEN1394"
|
||||
>Assembler directives</A
|
||||
></H1
|
||||
><P
|
||||
@ -174,6 +174,61 @@ CLASS="EMPHASIS"
|
||||
><P
|
||||
> <TT
|
||||
CLASS="LITERAL"
|
||||
>.cbmfloat</TT
|
||||
> <I
|
||||
CLASS="EMPHASIS"
|
||||
>string</I
|
||||
>
|
||||
[ , <I
|
||||
CLASS="EMPHASIS"
|
||||
>string</I
|
||||
>, ... ]: Specifies a
|
||||
series of strings, which are interpreted as floating
|
||||
point constants, and then included in the 5-byte floating
|
||||
point format used by the Commodore BASICs. This format is
|
||||
8 bits of exponent, followed by a sign bit and a 31-bit
|
||||
big-endian mantissa fraction. (The 1 in front of the
|
||||
binary point is presumed to be present.) An exponent of 0
|
||||
specifies a constant of 0, and the exponent is shifted up
|
||||
by 129 before being stored.
|
||||
</P
|
||||
><P
|
||||
> Because IEEE-754 doesn't perfectly match the Commodore's
|
||||
system, if you wish to precisely replicate individual
|
||||
constants that cannot be represented exactly you may have
|
||||
better luck with the following program, which will run on
|
||||
both the Commodore 64 and VIC-20:
|
||||
</P
|
||||
><TABLE
|
||||
BORDER="0"
|
||||
BGCOLOR="#E0E0E0"
|
||||
WIDTH="90%"
|
||||
><TR
|
||||
><TD
|
||||
><PRE
|
||||
CLASS="PROGRAMLISTING"
|
||||
>10 CLR:V=0:PV=PEEK(45)+256*PEEK(46)+2
|
||||
20 INPUT "NUMBER (0 TO QUIT)";V
|
||||
30 IF V=0 THEN END
|
||||
40 PRINT ".BYTE";
|
||||
50 FOR I=0 TO 4
|
||||
60 IF I>0 THEN PRINT CHR$(157);",";
|
||||
70 PRINT PEEK(PV+I);:NEXT I:PRINT:GOTO 20</PRE
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
>This program will print out
|
||||
a <TT
|
||||
CLASS="LITERAL"
|
||||
>.byte</TT
|
||||
> directive for you to include in
|
||||
your program to represent that number.</P
|
||||
></LI
|
||||
><LI
|
||||
><P
|
||||
> <TT
|
||||
CLASS="LITERAL"
|
||||
>.checkpc</TT
|
||||
> <I
|
||||
CLASS="EMPHASIS"
|
||||
@ -521,7 +576,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x1221.html"
|
||||
HREF="x1354.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -551,7 +606,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="a1034.html"
|
||||
HREF="a1167.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="The basics"
|
||||
HREF="c55.html"><LINK
|
||||
HREF="c56.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Producing Commodore 64 programs"
|
||||
HREF="x71.html"><LINK
|
||||
HREF="x72.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Writing the actual code"
|
||||
HREF="x161.html"></HEAD
|
||||
HREF="x162.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x71.html"
|
||||
HREF="x72.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x161.html"
|
||||
HREF="x162.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN140"
|
||||
NAME="AEN141"
|
||||
>Related commands and options</A
|
||||
></H1
|
||||
><P
|
||||
@ -155,7 +155,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x71.html"
|
||||
HREF="x72.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -173,7 +173,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x161.html"
|
||||
HREF="x162.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -189,7 +189,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c55.html"
|
||||
HREF="c56.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="The basics"
|
||||
HREF="c55.html"><LINK
|
||||
HREF="c56.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Related commands and options"
|
||||
HREF="x140.html"><LINK
|
||||
HREF="x141.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Assembling the code"
|
||||
HREF="x170.html"></HEAD
|
||||
HREF="x171.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x140.html"
|
||||
HREF="x141.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x170.html"
|
||||
HREF="x171.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN161"
|
||||
NAME="AEN162"
|
||||
>Writing the actual code</A
|
||||
></H1
|
||||
><P
|
||||
@ -121,7 +121,7 @@ hello: .byte "HELLO, WORLD!", 0
|
||||
><P
|
||||
> The complete, final source is available in
|
||||
the <A
|
||||
HREF="a975.html#TUTOR1-SRC"
|
||||
HREF="a1112.html#TUTOR1-SRC"
|
||||
><I
|
||||
><I
|
||||
>hello1.oph</I
|
||||
@ -146,7 +146,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x140.html"
|
||||
HREF="x141.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -164,7 +164,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x170.html"
|
||||
HREF="x171.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -180,7 +180,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c55.html"
|
||||
HREF="c56.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="The basics"
|
||||
HREF="c55.html"><LINK
|
||||
HREF="c56.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Writing the actual code"
|
||||
HREF="x161.html"><LINK
|
||||
HREF="x162.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Labels and aliases"
|
||||
HREF="c223.html"></HEAD
|
||||
HREF="c236.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x161.html"
|
||||
HREF="x162.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c223.html"
|
||||
HREF="c236.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN170"
|
||||
NAME="AEN171"
|
||||
>Assembling the code</A
|
||||
></H1
|
||||
><P
|
||||
@ -143,7 +143,7 @@ CLASS="OPTION"
|
||||
><DIV
|
||||
CLASS="TABLE"
|
||||
><A
|
||||
NAME="AEN185"
|
||||
NAME="AEN186"
|
||||
></A
|
||||
><P
|
||||
><B
|
||||
@ -179,6 +179,24 @@ CLASS="OPTION"
|
||||
><TD
|
||||
><CODE
|
||||
CLASS="OPTION"
|
||||
>-l FILE</CODE
|
||||
></TD
|
||||
><TD
|
||||
>Specifies an optional listing file that gives the emitted binary in human-readable form, with disassembly.</TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
><CODE
|
||||
CLASS="OPTION"
|
||||
>-m FILE</CODE
|
||||
></TD
|
||||
><TD
|
||||
>Specifies an optional map file that gives the in-source names for every label used in the program.</TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
><CODE
|
||||
CLASS="OPTION"
|
||||
>-u</CODE
|
||||
></TD
|
||||
><TD
|
||||
@ -197,6 +215,15 @@ CLASS="OPTION"
|
||||
><TD
|
||||
><CODE
|
||||
CLASS="OPTION"
|
||||
>-4</CODE
|
||||
></TD
|
||||
><TD
|
||||
>Allows opcodes and addressing modes added by the 4502. (Experimental.)</TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
><CODE
|
||||
CLASS="OPTION"
|
||||
>-q</CODE
|
||||
></TD
|
||||
><TD
|
||||
@ -235,35 +262,37 @@ Assembly complete: 45 bytes output (14 code, 29 data, 2 filler)
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
> This will produce a file named <TT
|
||||
> This will produce a file
|
||||
named <TT
|
||||
CLASS="FILENAME"
|
||||
>hello.prg</TT
|
||||
>. If
|
||||
your emulator can run <TT
|
||||
>. If your emulator can
|
||||
run <TT
|
||||
CLASS="FILENAME"
|
||||
>PRG</TT
|
||||
> files directly,
|
||||
this file will now run (and print <SAMP
|
||||
> files directly, this file will now
|
||||
run (and print <SAMP
|
||||
CLASS="COMPUTEROUTPUT"
|
||||
>HELLO,
|
||||
WORLD!</SAMP
|
||||
>) as many times as you
|
||||
type <KBD
|
||||
>HELLO, WORLD!</SAMP
|
||||
>)
|
||||
as many times as you type <KBD
|
||||
CLASS="USERINPUT"
|
||||
>RUN</KBD
|
||||
>. Otherwise, use
|
||||
a <TT
|
||||
>.
|
||||
Otherwise, use a <TT
|
||||
CLASS="FILENAME"
|
||||
>D64</TT
|
||||
> management utility to put
|
||||
the <TT
|
||||
> management utility to
|
||||
put the <TT
|
||||
CLASS="FILENAME"
|
||||
>PRG</TT
|
||||
> on a <TT
|
||||
CLASS="FILENAME"
|
||||
>D64</TT
|
||||
>, then
|
||||
load and run the file off that.
|
||||
>,
|
||||
then load and run the file off that. If you have access to a
|
||||
device like the 1541 Ultimate II, you can even load the file
|
||||
directly into the actual hardware.
|
||||
</P
|
||||
></DIV
|
||||
><DIV
|
||||
@ -282,7 +311,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x161.html"
|
||||
HREF="x162.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -300,7 +329,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c223.html"
|
||||
HREF="c236.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -316,7 +345,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c55.html"
|
||||
HREF="c56.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Labels and aliases"
|
||||
HREF="c223.html"><LINK
|
||||
HREF="c236.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Labels and aliases"
|
||||
HREF="c223.html"><LINK
|
||||
HREF="c236.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Aliasing"
|
||||
HREF="x248.html"></HEAD
|
||||
HREF="x262.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c223.html"
|
||||
HREF="c236.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x248.html"
|
||||
HREF="x262.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN237"
|
||||
NAME="AEN251"
|
||||
>Anonymous labels</A
|
||||
></H1
|
||||
><P
|
||||
@ -147,7 +147,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c223.html"
|
||||
HREF="c236.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -165,7 +165,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x248.html"
|
||||
HREF="x262.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -181,7 +181,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c223.html"
|
||||
HREF="c236.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Labels and aliases"
|
||||
HREF="c223.html"><LINK
|
||||
HREF="c236.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Anonymous labels"
|
||||
HREF="x237.html"><LINK
|
||||
HREF="x251.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Headers, Libraries, and Macros"
|
||||
HREF="c259.html"></HEAD
|
||||
HREF="c273.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x237.html"
|
||||
HREF="x251.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c259.html"
|
||||
HREF="c273.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN248"
|
||||
NAME="AEN262"
|
||||
>Aliasing</A
|
||||
></H1
|
||||
><P
|
||||
@ -119,7 +119,7 @@ CLASS="PROGRAMLISTING"
|
||||
></TABLE
|
||||
><P
|
||||
> The final version of the code is in <A
|
||||
HREF="x982.html"
|
||||
HREF="x1119.html"
|
||||
><I
|
||||
><I
|
||||
>hello2.oph</I
|
||||
@ -127,7 +127,7 @@ HREF="x982.html"
|
||||
></A
|
||||
>. It should
|
||||
assemble to exactly the same program as <A
|
||||
HREF="a975.html#TUTOR1-SRC"
|
||||
HREF="a1112.html#TUTOR1-SRC"
|
||||
><I
|
||||
><I
|
||||
>hello1.oph</I
|
||||
@ -152,7 +152,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x237.html"
|
||||
HREF="x251.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -170,7 +170,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c259.html"
|
||||
HREF="c273.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -186,7 +186,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c223.html"
|
||||
HREF="c236.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Headers, Libraries, and Macros"
|
||||
HREF="c259.html"><LINK
|
||||
HREF="c273.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Headers, Libraries, and Macros"
|
||||
HREF="c259.html"><LINK
|
||||
HREF="c273.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Example code"
|
||||
HREF="x314.html"></HEAD
|
||||
HREF="x328.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c259.html"
|
||||
HREF="c273.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x314.html"
|
||||
HREF="x328.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN284"
|
||||
NAME="AEN298"
|
||||
>Macros</A
|
||||
></H1
|
||||
><P
|
||||
@ -99,7 +99,7 @@ CLASS="EMPHASIS"
|
||||
body. This produces effects much closer to those of a
|
||||
traditional function call. A more detailed discussion of the
|
||||
tradeoffs may be found in <A
|
||||
HREF="a1034.html"
|
||||
HREF="a1167.html"
|
||||
>the Appendix called <I
|
||||
>Ophis Command Reference</I
|
||||
></A
|
||||
@ -110,7 +110,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN292"
|
||||
NAME="AEN306"
|
||||
>Macro definitions</A
|
||||
></H2
|
||||
><P
|
||||
@ -132,7 +132,9 @@ CLASS="LITERAL"
|
||||
><P
|
||||
> No global or anonymous labels may be defined inside a macro:
|
||||
temporary labels only persist in the macro expansion itself.
|
||||
(Each macro body has its own scope.)
|
||||
(Each macro body has its own scope. A label map will trace
|
||||
back through macro expansions to describe were a label inside
|
||||
a macro body came from.)
|
||||
</P
|
||||
><P
|
||||
> Arguments to macros are referred to by number: the first is
|
||||
@ -178,7 +180,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN305"
|
||||
NAME="AEN319"
|
||||
>Macro invocations</A
|
||||
></H2
|
||||
><P
|
||||
@ -238,7 +240,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c259.html"
|
||||
HREF="c273.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -256,7 +258,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x314.html"
|
||||
HREF="x328.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -272,7 +274,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c259.html"
|
||||
HREF="c273.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -17,7 +17,7 @@ TITLE="Preface"
|
||||
HREF="f10.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="About the examples"
|
||||
HREF="x41.html"></HEAD
|
||||
HREF="x42.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x41.html"
|
||||
HREF="x42.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN29"
|
||||
NAME="AEN30"
|
||||
>Getting a copy of Ophis</A
|
||||
></H1
|
||||
><P
|
||||
@ -160,7 +160,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x41.html"
|
||||
HREF="x42.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Headers, Libraries, and Macros"
|
||||
HREF="c259.html"><LINK
|
||||
HREF="c273.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Macros"
|
||||
HREF="x284.html"><LINK
|
||||
HREF="x298.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Character maps"
|
||||
HREF="c319.html"></HEAD
|
||||
HREF="c333.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x284.html"
|
||||
HREF="x298.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c319.html"
|
||||
HREF="c333.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,12 +73,12 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN314"
|
||||
NAME="AEN328"
|
||||
>Example code</A
|
||||
></H1
|
||||
><P
|
||||
> <A
|
||||
HREF="x994.html"
|
||||
HREF="x1131.html"
|
||||
><I
|
||||
><I
|
||||
>hello3.oph</I
|
||||
@ -110,7 +110,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x284.html"
|
||||
HREF="x298.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -128,7 +128,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c319.html"
|
||||
HREF="c333.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -144,7 +144,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c259.html"
|
||||
HREF="c273.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -14,10 +14,10 @@ TITLE="Preface"
|
||||
HREF="f10.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Getting a copy of Ophis"
|
||||
HREF="x29.html"><LINK
|
||||
HREF="x30.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Using the Ophis Assembler"
|
||||
HREF="p50.html"></HEAD
|
||||
HREF="p51.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x29.html"
|
||||
HREF="x30.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="p50.html"
|
||||
HREF="p51.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,11 +73,14 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN41"
|
||||
NAME="AEN42"
|
||||
>About the examples</A
|
||||
></H1
|
||||
><P
|
||||
> Versions of the examples in this book are available from the Ophis site. Windows users will find them packaged with the distribution; all other users can get them as a separate download or pull them directly from github.
|
||||
> Versions of the examples in this book are available from the
|
||||
Ophis site. Windows users will find them packaged with the
|
||||
distribution; all other users can get them as a separate
|
||||
download or pull them directly from github.
|
||||
</P
|
||||
><P
|
||||
> The code in this book is available in
|
||||
@ -125,7 +128,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x29.html"
|
||||
HREF="x30.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -143,7 +146,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="p50.html"
|
||||
HREF="p51.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Advanced Memory Segments"
|
||||
HREF="c443.html"><LINK
|
||||
HREF="c460.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Advanced Memory Segments"
|
||||
HREF="c443.html"><LINK
|
||||
HREF="c460.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Where to go from here"
|
||||
HREF="x476.html"></HEAD
|
||||
TITLE="Platform-Specific Techniques"
|
||||
HREF="c489.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c443.html"
|
||||
HREF="c460.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x476.html"
|
||||
HREF="c489.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN454"
|
||||
NAME="AEN471"
|
||||
>The Solution</A
|
||||
></H1
|
||||
><P
|
||||
@ -113,9 +113,9 @@ CLASS="PROGRAMLISTING"
|
||||
></TABLE
|
||||
><P
|
||||
> Now, actually, the rest of the zero page is reserved too:
|
||||
locations $02-$7F are used by the BASIC interpreter, and
|
||||
locations $80-$FF are used by the KERNAL. We don't need the
|
||||
BASIC interpreter, though, so we can back up all of $02-$7F at
|
||||
locations $02-$8F are used by the BASIC interpreter, and
|
||||
locations $90-$FF are used by the KERNAL. We don't need the
|
||||
BASIC interpreter, though, so we can back up all of $02-$8F at
|
||||
the start of our program and restore it all when we're done.
|
||||
</P
|
||||
><P
|
||||
@ -133,9 +133,9 @@ WIDTH="100%"
|
||||
CLASS="PROGRAMLISTING"
|
||||
>.scope
|
||||
; Cache BASIC zero page at top of available RAM
|
||||
ldx #$7E
|
||||
ldx #$8e
|
||||
* lda $01, x
|
||||
sta $CF81, x
|
||||
sta $cf81, x
|
||||
dex
|
||||
bne -
|
||||
|
||||
@ -154,8 +154,8 @@ CLASS="PROGRAMLISTING"
|
||||
sta $01
|
||||
|
||||
; Restore BASIC zero page
|
||||
ldx #$7E
|
||||
* lda $CF81, x
|
||||
ldx #$8e
|
||||
* lda $cf81, x
|
||||
sta $01, x
|
||||
dex
|
||||
bne -
|
||||
@ -171,24 +171,6 @@ _main:
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
> The new, improved header file is <A
|
||||
HREF="x1018.html"
|
||||
><I
|
||||
><I
|
||||
>c64_0.oph</I
|
||||
></I
|
||||
></A
|
||||
>. This,
|
||||
like <TT
|
||||
CLASS="FILENAME"
|
||||
>c64kernal.oph</TT
|
||||
>, is available for use in
|
||||
your own projects in the <TT
|
||||
CLASS="LITERAL"
|
||||
>platform/</TT
|
||||
> directory.
|
||||
</P
|
||||
><P
|
||||
> Our <TT
|
||||
CLASS="LITERAL"
|
||||
>print'str</TT
|
||||
@ -243,9 +225,8 @@ CLASS="PROGRAMLISTING"
|
||||
></TR
|
||||
></TABLE
|
||||
><P
|
||||
> That concludes our tour. The final source file
|
||||
is <A
|
||||
HREF="x1022.html"
|
||||
> The final source file is <A
|
||||
HREF="x1155.html"
|
||||
><I
|
||||
><I
|
||||
>hello7.oph</I
|
||||
@ -270,7 +251,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c443.html"
|
||||
HREF="c460.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -288,7 +269,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x476.html"
|
||||
HREF="c489.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -304,7 +285,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c443.html"
|
||||
HREF="c460.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
||||
@ -312,7 +293,7 @@ ACCESSKEY="U"
|
||||
WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
>Where to go from here</TD
|
||||
>Platform-Specific Techniques</TD
|
||||
></TR
|
||||
></TABLE
|
||||
></DIV
|
169
book/x606.html
Normal file
169
book/x606.html
Normal file
@ -0,0 +1,169 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<HTML
|
||||
><HEAD
|
||||
><TITLE
|
||||
>The Nintendo Entertainment System</TITLE
|
||||
><META
|
||||
NAME="GENERATOR"
|
||||
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
|
||||
REL="HOME"
|
||||
TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Platform-Specific Techniques"
|
||||
HREF="c489.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Platform-Specific Techniques"
|
||||
HREF="c489.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="The Atari 2600 VCS"
|
||||
HREF="x611.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
TEXT="#000000"
|
||||
LINK="#0000FF"
|
||||
VLINK="#840084"
|
||||
ALINK="#0000FF"
|
||||
><DIV
|
||||
CLASS="NAVHEADER"
|
||||
><TABLE
|
||||
SUMMARY="Header navigation table"
|
||||
WIDTH="100%"
|
||||
BORDER="0"
|
||||
CELLPADDING="0"
|
||||
CELLSPACING="0"
|
||||
><TR
|
||||
><TH
|
||||
COLSPAN="3"
|
||||
ALIGN="center"
|
||||
>Programming with Ophis</TH
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c489.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
><TD
|
||||
WIDTH="80%"
|
||||
ALIGN="center"
|
||||
VALIGN="bottom"
|
||||
>Platform-Specific Techniques</TD
|
||||
><TD
|
||||
WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x611.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
></TR
|
||||
></TABLE
|
||||
><HR
|
||||
ALIGN="LEFT"
|
||||
WIDTH="100%"></DIV
|
||||
><DIV
|
||||
CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN606"
|
||||
>The Nintendo Entertainment System</A
|
||||
></H1
|
||||
><P
|
||||
> The NES development community is somewhat more fragmented than
|
||||
the others. A skeletal <TT
|
||||
CLASS="LITERAL"
|
||||
>nes.oph</TT
|
||||
> file is
|
||||
provided, but memory locations are not as consistently
|
||||
named. Much sample code doesn't provide aliases for control
|
||||
registers at all.
|
||||
</P
|
||||
><P
|
||||
> Conveniently creating runnable NES programs is somewhat
|
||||
involved. Any given product was generally burned onto several
|
||||
chips that were affixed to one of a large number of circuit
|
||||
boards. These are often referred to as "mappers" by
|
||||
developers because their effect is to implement various
|
||||
bankswitching schemes. The result is a program built out of
|
||||
parts, each with its own origin. A "Hello World"
|
||||
sample program ships with Ophis. It does not use a bankswitcher,
|
||||
but it does split its contents into a program chip and a
|
||||
graphics chip, with one of two wrapper files to knit them
|
||||
together into a file that other software will recognize. Samples
|
||||
are given for the common iNES format and the defunct UNIF
|
||||
format.
|
||||
</P
|
||||
></DIV
|
||||
><DIV
|
||||
CLASS="NAVFOOTER"
|
||||
><HR
|
||||
ALIGN="LEFT"
|
||||
WIDTH="100%"><TABLE
|
||||
SUMMARY="Footer navigation table"
|
||||
WIDTH="100%"
|
||||
BORDER="0"
|
||||
CELLPADDING="0"
|
||||
CELLSPACING="0"
|
||||
><TR
|
||||
><TD
|
||||
WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c489.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
><TD
|
||||
WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="book1.html"
|
||||
ACCESSKEY="H"
|
||||
>Home</A
|
||||
></TD
|
||||
><TD
|
||||
WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x611.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
></TR
|
||||
><TR
|
||||
><TD
|
||||
WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
>Platform-Specific Techniques</TD
|
||||
><TD
|
||||
WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c489.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
||||
><TD
|
||||
WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
>The Atari 2600 VCS</TD
|
||||
></TR
|
||||
></TABLE
|
||||
></DIV
|
||||
></BODY
|
||||
></HTML
|
||||
>
|
@ -2,7 +2,7 @@
|
||||
<HTML
|
||||
><HEAD
|
||||
><TITLE
|
||||
>Where to go from here</TITLE
|
||||
>The Atari 2600 VCS</TITLE
|
||||
><META
|
||||
NAME="GENERATOR"
|
||||
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
|
||||
@ -10,14 +10,14 @@ REL="HOME"
|
||||
TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Advanced Memory Segments"
|
||||
HREF="c443.html"><LINK
|
||||
TITLE="Platform-Specific Techniques"
|
||||
HREF="c489.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="The Solution"
|
||||
HREF="x454.html"><LINK
|
||||
TITLE="The Nintendo Entertainment System"
|
||||
HREF="x606.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="To HLL and Back"
|
||||
HREF="p481.html"></HEAD
|
||||
HREF="p618.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x454.html"
|
||||
HREF="x606.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -53,13 +53,13 @@ ACCESSKEY="P"
|
||||
WIDTH="80%"
|
||||
ALIGN="center"
|
||||
VALIGN="bottom"
|
||||
>Advanced Memory Segments</TD
|
||||
>Platform-Specific Techniques</TD
|
||||
><TD
|
||||
WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="p481.html"
|
||||
HREF="p618.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,26 +73,30 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN476"
|
||||
>Where to go from here</A
|
||||
NAME="AEN611"
|
||||
>The Atari 2600 VCS</A
|
||||
></H1
|
||||
><P
|
||||
> This tutorial has touched on everything that the assembler can
|
||||
do, but it's not really well organized as a
|
||||
reference. <A
|
||||
HREF="a1034.html"
|
||||
>the Appendix called <I
|
||||
>Ophis Command Reference</I
|
||||
></A
|
||||
> is a better place to look
|
||||
up matters of syntax or consult lists of available commands.
|
||||
> Of all the 8-bit development communities, the Atari developers
|
||||
seem to be the most cohesive. The development documents
|
||||
available are universal, and analysts and developers alike all
|
||||
use the register names in the <I
|
||||
CLASS="EMPHASIS"
|
||||
>Stella Developer's
|
||||
Guide</I
|
||||
>. Ophis follows their lead, providing these
|
||||
names in the header <TT
|
||||
CLASS="LITERAL"
|
||||
>stella.oph</TT
|
||||
>.
|
||||
</P
|
||||
><P
|
||||
> If you're looking for projects to undertake, the Commodore 64
|
||||
and Atari 2600 development communities are both very strong, and
|
||||
the Apple II and NES development communities are still alive and
|
||||
well as well. There's an annual Minigame Competition that's
|
||||
always looking for new entries.
|
||||
> The <TT
|
||||
CLASS="LITERAL"
|
||||
>stella.oph</TT
|
||||
> header also replicates two
|
||||
macros that appear in the header files distributed to budding
|
||||
VCS developers. They are documented in the file.
|
||||
</P
|
||||
></DIV
|
||||
><DIV
|
||||
@ -111,7 +115,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x454.html"
|
||||
HREF="x606.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -129,7 +133,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="p481.html"
|
||||
HREF="p618.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -139,13 +143,13 @@ ACCESSKEY="N"
|
||||
WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
>The Solution</TD
|
||||
>The Nintendo Entertainment System</TD
|
||||
><TD
|
||||
WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c443.html"
|
||||
HREF="c489.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="The Second Step"
|
||||
HREF="c486.html"><LINK
|
||||
HREF="c623.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="The Second Step"
|
||||
HREF="c486.html"><LINK
|
||||
HREF="c623.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Unsigned arithmetic"
|
||||
HREF="x504.html"></HEAD
|
||||
HREF="x641.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c486.html"
|
||||
HREF="c623.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x504.html"
|
||||
HREF="x641.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN498"
|
||||
NAME="AEN635"
|
||||
>The solution</A
|
||||
></H1
|
||||
><P
|
||||
@ -115,7 +115,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c486.html"
|
||||
HREF="c623.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -133,7 +133,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x504.html"
|
||||
HREF="x641.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -149,7 +149,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c486.html"
|
||||
HREF="c623.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="The Second Step"
|
||||
HREF="c486.html"><LINK
|
||||
HREF="c623.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="The solution"
|
||||
HREF="x498.html"><LINK
|
||||
HREF="x635.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="16-bit addition and subtraction"
|
||||
HREF="x527.html"></HEAD
|
||||
HREF="x664.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x498.html"
|
||||
HREF="x635.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x527.html"
|
||||
HREF="x664.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN504"
|
||||
NAME="AEN641"
|
||||
>Unsigned arithmetic</A
|
||||
></H1
|
||||
><P
|
||||
@ -216,7 +216,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x498.html"
|
||||
HREF="x635.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -234,7 +234,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x527.html"
|
||||
HREF="x664.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -250,7 +250,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c486.html"
|
||||
HREF="c623.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="The Second Step"
|
||||
HREF="c486.html"><LINK
|
||||
HREF="c623.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Unsigned arithmetic"
|
||||
HREF="x504.html"><LINK
|
||||
HREF="x641.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="16-bit comparisons"
|
||||
HREF="x537.html"></HEAD
|
||||
HREF="x674.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x504.html"
|
||||
HREF="x641.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x537.html"
|
||||
HREF="x674.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN527"
|
||||
NAME="AEN664"
|
||||
>16-bit addition and subtraction</A
|
||||
></H1
|
||||
><P
|
||||
@ -145,7 +145,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x504.html"
|
||||
HREF="x641.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -163,7 +163,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x537.html"
|
||||
HREF="x674.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -179,7 +179,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c486.html"
|
||||
HREF="c623.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="The Second Step"
|
||||
HREF="c486.html"><LINK
|
||||
HREF="c623.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="16-bit addition and subtraction"
|
||||
HREF="x527.html"><LINK
|
||||
HREF="x664.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Structured Programming"
|
||||
HREF="c543.html"></HEAD
|
||||
HREF="c680.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x527.html"
|
||||
HREF="x664.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c543.html"
|
||||
HREF="c680.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN537"
|
||||
NAME="AEN674"
|
||||
>16-bit comparisons</A
|
||||
></H1
|
||||
><P
|
||||
@ -127,7 +127,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x527.html"
|
||||
HREF="x664.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -145,7 +145,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c543.html"
|
||||
HREF="c680.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -161,7 +161,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c486.html"
|
||||
HREF="c623.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="The basics"
|
||||
HREF="c55.html"><LINK
|
||||
HREF="c56.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="The basics"
|
||||
HREF="c55.html"><LINK
|
||||
HREF="c56.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Related commands and options"
|
||||
HREF="x140.html"></HEAD
|
||||
HREF="x141.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c55.html"
|
||||
HREF="c56.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x140.html"
|
||||
HREF="x141.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN71"
|
||||
NAME="AEN72"
|
||||
>Producing Commodore 64 programs</A
|
||||
></H1
|
||||
><P
|
||||
@ -150,7 +150,7 @@ CLASS="SCREEN"
|
||||
><DIV
|
||||
CLASS="TABLE"
|
||||
><A
|
||||
NAME="AEN85"
|
||||
NAME="AEN86"
|
||||
></A
|
||||
><P
|
||||
><B
|
||||
@ -380,7 +380,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c55.html"
|
||||
HREF="c56.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -398,7 +398,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x140.html"
|
||||
HREF="x141.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -414,7 +414,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c55.html"
|
||||
HREF="c56.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Structured Programming"
|
||||
HREF="c543.html"><LINK
|
||||
HREF="c680.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Structured Programming"
|
||||
HREF="c543.html"><LINK
|
||||
HREF="c680.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Procedures and register saving"
|
||||
HREF="x603.html"></HEAD
|
||||
HREF="x740.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c543.html"
|
||||
HREF="c680.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x603.html"
|
||||
HREF="x740.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN597"
|
||||
NAME="AEN734"
|
||||
>The stack</A
|
||||
></H1
|
||||
><P
|
||||
@ -121,7 +121,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c543.html"
|
||||
HREF="c680.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -139,7 +139,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x603.html"
|
||||
HREF="x740.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -155,7 +155,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c543.html"
|
||||
HREF="c680.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Structured Programming"
|
||||
HREF="c543.html"><LINK
|
||||
HREF="c680.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="The stack"
|
||||
HREF="x597.html"><LINK
|
||||
HREF="x734.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Variables"
|
||||
HREF="x621.html"></HEAD
|
||||
HREF="x758.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x597.html"
|
||||
HREF="x734.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x621.html"
|
||||
HREF="x758.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,14 +73,14 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN603"
|
||||
NAME="AEN740"
|
||||
>Procedures and register saving</A
|
||||
></H1
|
||||
><P
|
||||
> All programming languages are designed around the concept of
|
||||
procedures.<A
|
||||
NAME="AEN606"
|
||||
HREF="#FTN.AEN606"
|
||||
NAME="AEN743"
|
||||
HREF="#FTN.AEN743"
|
||||
><SPAN
|
||||
CLASS="footnote"
|
||||
>[1]</SPAN
|
||||
@ -193,8 +193,8 @@ ALIGN="LEFT"
|
||||
VALIGN="TOP"
|
||||
WIDTH="5%"
|
||||
><A
|
||||
NAME="FTN.AEN606"
|
||||
HREF="x603.html#AEN606"
|
||||
NAME="FTN.AEN743"
|
||||
HREF="x740.html#AEN743"
|
||||
><SPAN
|
||||
CLASS="footnote"
|
||||
>[1]</SPAN
|
||||
@ -232,7 +232,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x597.html"
|
||||
HREF="x734.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -250,7 +250,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x621.html"
|
||||
HREF="x758.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -266,7 +266,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c543.html"
|
||||
HREF="c680.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Structured Programming"
|
||||
HREF="c543.html"><LINK
|
||||
HREF="c680.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Procedures and register saving"
|
||||
HREF="x603.html"><LINK
|
||||
HREF="x740.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Data structures"
|
||||
HREF="x666.html"></HEAD
|
||||
HREF="x803.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x603.html"
|
||||
HREF="x740.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x666.html"
|
||||
HREF="x803.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN621"
|
||||
NAME="AEN758"
|
||||
>Variables</A
|
||||
></H1
|
||||
><P
|
||||
@ -84,7 +84,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN624"
|
||||
NAME="AEN761"
|
||||
>Global variables</A
|
||||
></H2
|
||||
><P
|
||||
@ -102,7 +102,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN627"
|
||||
NAME="AEN764"
|
||||
>Local variables</A
|
||||
></H2
|
||||
><P
|
||||
@ -123,7 +123,7 @@ CLASS="SECTION"
|
||||
><H3
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN631"
|
||||
NAME="AEN768"
|
||||
>Treat local variables like registers</A
|
||||
></H3
|
||||
><P
|
||||
@ -144,7 +144,7 @@ CLASS="SECTION"
|
||||
><H3
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN635"
|
||||
NAME="AEN772"
|
||||
>Procedure-based memory allocation</A
|
||||
></H3
|
||||
><P
|
||||
@ -191,7 +191,7 @@ CLASS="SECTION"
|
||||
><H3
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN644"
|
||||
NAME="AEN781"
|
||||
>Partition-based memory allocation</A
|
||||
></H3
|
||||
><P
|
||||
@ -260,7 +260,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN661"
|
||||
NAME="AEN798"
|
||||
>Constants</A
|
||||
></H2
|
||||
><P
|
||||
@ -297,7 +297,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x603.html"
|
||||
HREF="x740.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -315,7 +315,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x666.html"
|
||||
HREF="x803.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -331,7 +331,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c543.html"
|
||||
HREF="c680.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Structured Programming"
|
||||
HREF="c543.html"><LINK
|
||||
HREF="c680.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Variables"
|
||||
HREF="x621.html"><LINK
|
||||
HREF="x758.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="A modest example: Insertion sort on linked lists"
|
||||
HREF="x719.html"></HEAD
|
||||
HREF="x856.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x621.html"
|
||||
HREF="x758.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x719.html"
|
||||
HREF="x856.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN666"
|
||||
NAME="AEN803"
|
||||
>Data structures</A
|
||||
></H1
|
||||
><P
|
||||
@ -86,7 +86,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN669"
|
||||
NAME="AEN806"
|
||||
>Arrays</A
|
||||
></H2
|
||||
><P
|
||||
@ -203,7 +203,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN682"
|
||||
NAME="AEN819"
|
||||
>Records</A
|
||||
></H2
|
||||
><P
|
||||
@ -334,7 +334,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN701"
|
||||
NAME="AEN838"
|
||||
>Bitfields</A
|
||||
></H2
|
||||
><P
|
||||
@ -398,7 +398,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x621.html"
|
||||
HREF="x758.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -416,7 +416,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x719.html"
|
||||
HREF="x856.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -432,7 +432,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c543.html"
|
||||
HREF="c680.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Structured Programming"
|
||||
HREF="c543.html"><LINK
|
||||
HREF="c680.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Data structures"
|
||||
HREF="x666.html"><LINK
|
||||
HREF="x803.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Pointers and Indirection"
|
||||
HREF="c748.html"></HEAD
|
||||
HREF="c885.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x666.html"
|
||||
HREF="x803.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c748.html"
|
||||
HREF="c885.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN719"
|
||||
NAME="AEN856"
|
||||
>A modest example: Insertion sort on linked lists</A
|
||||
></H1
|
||||
><P
|
||||
@ -89,7 +89,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN722"
|
||||
NAME="AEN859"
|
||||
>The data structure</A
|
||||
></H2
|
||||
><P
|
||||
@ -159,7 +159,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN731"
|
||||
NAME="AEN868"
|
||||
>Doing an insertion sort</A
|
||||
></H2
|
||||
><P
|
||||
@ -230,7 +230,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN737"
|
||||
NAME="AEN874"
|
||||
>Inserting an element</A
|
||||
></H2
|
||||
><P
|
||||
@ -360,14 +360,14 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN744"
|
||||
NAME="AEN881"
|
||||
>The complete application</A
|
||||
></H2
|
||||
><P
|
||||
> The full application, which deals with interfacing with CBM
|
||||
BASIC and handles console I/O and such, is
|
||||
in <A
|
||||
HREF="x1026.html"
|
||||
HREF="x1159.html"
|
||||
><I
|
||||
><I
|
||||
>structuredemo.oph</I
|
||||
@ -393,7 +393,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x666.html"
|
||||
HREF="x803.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -411,7 +411,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c748.html"
|
||||
HREF="c885.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -427,7 +427,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c543.html"
|
||||
HREF="c680.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Pointers and Indirection"
|
||||
HREF="c748.html"><LINK
|
||||
HREF="c885.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Pointers and Indirection"
|
||||
HREF="c748.html"><LINK
|
||||
HREF="c885.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="What about Indexed Indirect?"
|
||||
HREF="x798.html"></HEAD
|
||||
HREF="x935.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c748.html"
|
||||
HREF="c885.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x798.html"
|
||||
HREF="x935.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN782"
|
||||
NAME="AEN919"
|
||||
>Pointer arithmetic</A
|
||||
></H1
|
||||
><P
|
||||
@ -94,7 +94,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN785"
|
||||
NAME="AEN922"
|
||||
>The straightforward, slow way</A
|
||||
></H2
|
||||
><P
|
||||
@ -117,7 +117,7 @@ CLASS="SECTION"
|
||||
><H2
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN789"
|
||||
NAME="AEN926"
|
||||
>The clever fast way</A
|
||||
></H2
|
||||
><P
|
||||
@ -202,7 +202,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c748.html"
|
||||
HREF="c885.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -220,7 +220,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x798.html"
|
||||
HREF="x935.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -236,7 +236,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c748.html"
|
||||
HREF="c885.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Pointers and Indirection"
|
||||
HREF="c748.html"><LINK
|
||||
HREF="c885.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Pointer arithmetic"
|
||||
HREF="x782.html"><LINK
|
||||
HREF="x919.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Comparison with the other indexed forms"
|
||||
HREF="x805.html"></HEAD
|
||||
HREF="x942.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x782.html"
|
||||
HREF="x919.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x805.html"
|
||||
HREF="x942.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN798"
|
||||
NAME="AEN935"
|
||||
>What about Indexed Indirect?</A
|
||||
></H1
|
||||
><P
|
||||
@ -145,7 +145,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x782.html"
|
||||
HREF="x919.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -163,7 +163,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x805.html"
|
||||
HREF="x942.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -179,7 +179,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c748.html"
|
||||
HREF="c885.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Pointers and Indirection"
|
||||
HREF="c748.html"><LINK
|
||||
HREF="c885.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="What about Indexed Indirect?"
|
||||
HREF="x798.html"><LINK
|
||||
HREF="x935.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Conclusion"
|
||||
HREF="x813.html"></HEAD
|
||||
HREF="x950.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x798.html"
|
||||
HREF="x935.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x813.html"
|
||||
HREF="x950.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN805"
|
||||
NAME="AEN942"
|
||||
>Comparison with the other indexed forms</A
|
||||
></H1
|
||||
><P
|
||||
@ -142,7 +142,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x798.html"
|
||||
HREF="x935.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -160,7 +160,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x813.html"
|
||||
HREF="x950.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -176,7 +176,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c748.html"
|
||||
HREF="c885.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Pointers and Indirection"
|
||||
HREF="c748.html"><LINK
|
||||
HREF="c885.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Comparison with the other indexed forms"
|
||||
HREF="x805.html"><LINK
|
||||
HREF="x942.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Functionals"
|
||||
HREF="c816.html"></HEAD
|
||||
HREF="c953.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x805.html"
|
||||
HREF="x942.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c816.html"
|
||||
HREF="c953.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN813"
|
||||
NAME="AEN950"
|
||||
>Conclusion</A
|
||||
></H1
|
||||
><P
|
||||
@ -103,7 +103,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x805.html"
|
||||
HREF="x942.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -121,7 +121,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c816.html"
|
||||
HREF="c953.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -137,7 +137,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c748.html"
|
||||
HREF="c885.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Functionals"
|
||||
HREF="c816.html"><LINK
|
||||
HREF="c953.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="Functionals"
|
||||
HREF="c816.html"><LINK
|
||||
HREF="c953.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="Dispatch-on-type and Data-Directed Assembler"
|
||||
HREF="x855.html"></HEAD
|
||||
HREF="x992.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="c816.html"
|
||||
HREF="c953.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x855.html"
|
||||
HREF="x992.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN836"
|
||||
NAME="AEN973"
|
||||
>A quick digression on how subroutines work</A
|
||||
></H1
|
||||
><P
|
||||
@ -164,7 +164,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c816.html"
|
||||
HREF="c953.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -182,7 +182,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x855.html"
|
||||
HREF="x992.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -198,7 +198,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c816.html"
|
||||
HREF="c953.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
@ -11,13 +11,13 @@ TITLE="Programming with Ophis"
|
||||
HREF="book1.html"><LINK
|
||||
REL="UP"
|
||||
TITLE="Functionals"
|
||||
HREF="c816.html"><LINK
|
||||
HREF="c953.html"><LINK
|
||||
REL="PREVIOUS"
|
||||
TITLE="A quick digression on how subroutines work"
|
||||
HREF="x836.html"><LINK
|
||||
HREF="x973.html"><LINK
|
||||
REL="NEXT"
|
||||
TITLE="VTables and Object-Oriented Assembler"
|
||||
HREF="x871.html"></HEAD
|
||||
HREF="x1008.html"></HEAD
|
||||
><BODY
|
||||
CLASS="SECTION"
|
||||
BGCOLOR="#FFFFFF"
|
||||
@ -45,7 +45,7 @@ WIDTH="10%"
|
||||
ALIGN="left"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x836.html"
|
||||
HREF="x973.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -59,7 +59,7 @@ WIDTH="10%"
|
||||
ALIGN="right"
|
||||
VALIGN="bottom"
|
||||
><A
|
||||
HREF="x871.html"
|
||||
HREF="x1008.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -73,7 +73,7 @@ CLASS="SECTION"
|
||||
><H1
|
||||
CLASS="SECTION"
|
||||
><A
|
||||
NAME="AEN855"
|
||||
NAME="AEN992"
|
||||
>Dispatch-on-type and Data-Directed Assembler</A
|
||||
></H1
|
||||
><P
|
||||
@ -198,7 +198,7 @@ WIDTH="33%"
|
||||
ALIGN="left"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x836.html"
|
||||
HREF="x973.html"
|
||||
ACCESSKEY="P"
|
||||
><<< Previous</A
|
||||
></TD
|
||||
@ -216,7 +216,7 @@ WIDTH="33%"
|
||||
ALIGN="right"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="x871.html"
|
||||
HREF="x1008.html"
|
||||
ACCESSKEY="N"
|
||||
>Next >>></A
|
||||
></TD
|
||||
@ -232,7 +232,7 @@ WIDTH="34%"
|
||||
ALIGN="center"
|
||||
VALIGN="top"
|
||||
><A
|
||||
HREF="c816.html"
|
||||
HREF="c953.html"
|
||||
ACCESSKEY="U"
|
||||
>Up</A
|
||||
></TD
|
Loading…
x
Reference in New Issue
Block a user