Let's try it on for size:
<!--r1--><div class='codetop'>CODE</div><div class='codemain'><span style="position:relative;width:250px;background-color:#FFF;margin:3px;padding:3px;border:1px solid #F00;float:right;">Warnings
<a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE27"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE28"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE70"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE73"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE78"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE82"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE107"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE134"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE135"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE238"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE260"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE261"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE270"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE271"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE279"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE280"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE302"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE314"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE386"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE547"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE549"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE550"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE551"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE553"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE574"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE594"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE597"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE601"><span style="color:#A08;text-decoration:underline;">Unknown Variable Type</span></a></span>
<span style="position:relative;width:250px;background-color:#FFF;margin:3px;padding:3px;border:1px solid #F00;float:right;">Bookmarks
<a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE1"></a><span style="color:#A08;text-decoration:underline;">-----------------------------------------------------------</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE2"></a><span style="color:#A08;text-decoration:underline;"> All contents copyright 2004, Colin James Fitzpatrick</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE3"></a><span style="color:#A08;text-decoration:underline;"> All rights reserved. YOU MAY NOT REMOVE THIS NOTICE</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE4"></a><span style="color:#A08;text-decoration:underline;"> Read LICENSE.txt for licensing info</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE5"></a><span style="color:#A08;text-decoration:underline;">-----------------------------------------------------------</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE7"></a><span style="color:#A08;text-decoration:underline;">-----------------------------------------------------------</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE8"></a><span style="color:#A08;text-decoration:underline;"> RPGToolkit, Version 3.05 - System Library</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE9"></a><span style="color:#A08;text-decoration:underline;">-----------------------------------------------------------</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE11"></a><span style="color:#A08;text-decoration:underline;">-----------------------------------------------------------</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE12"></a><span style="color:#A08;text-decoration:underline;"> A file</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE13"></a><span style="color:#A08;text-decoration:underline;">-----------------------------------------------------------</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE17"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE18"></a><span style="color:#A08;text-decoration:underline;"> Public visibility</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE19"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE22"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE23"></a><span style="color:#A08;text-decoration:underline;"> Construct a file</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE24"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE32"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE33"></a><span style="color:#A08;text-decoration:underline;"> Write to the file</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE34"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE58"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE59"></a><span style="color:#A08;text-decoration:underline;"> Read from the file</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE60"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE89"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE90"></a><span style="color:#A08;text-decoration:underline;"> Write a number to the file</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE91"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE114"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE115"></a><span style="color:#A08;text-decoration:underline;"> Read a number from the file</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE116"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE142"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE143"></a><span style="color:#A08;text-decoration:underline;"> Change current access mode</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE144"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE157"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE158"></a><span style="color:#A08;text-decoration:underline;"> Check filename</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE159"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE162"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE163"></a><span style="color:#A08;text-decoration:underline;"> Check folder</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE164"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE167"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE168"></a><span style="color:#A08;text-decoration:underline;"> Check current access mode</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE169"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE172"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE173"></a><span style="color:#A08;text-decoration:underline;"> Check location in file</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE174"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE177"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE178"></a><span style="color:#A08;text-decoration:underline;"> Deconstruct the file</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE179"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE182"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE183"></a><span style="color:#A08;text-decoration:underline;"> Private visibility</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE184"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE194"></a><span style="color:#A08;text-decoration:underline;">-----------------------------------------------------------</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE195"></a><span style="color:#A08;text-decoration:underline;"> A console</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE196"></a><span style="color:#A08;text-decoration:underline;">-----------------------------------------------------------</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE198"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE199"></a><span style="color:#A08;text-decoration:underline;"> The main stream object--cio--is an instance of the CScreen class.</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE200"></a><span style="color:#A08;text-decoration:underline;"> You can write to the screen with <<, sending it varying objects,</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE201"></a><span style="color:#A08;text-decoration:underline;"> and you can read from the stream into a literal variable.</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE202"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE206"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE207"></a><span style="color:#A08;text-decoration:underline;"> Public visibility</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE208"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE211"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE212"></a><span style="color:#A08;text-decoration:underline;"> Construct the stream</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE213"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE218"></a><span style="color:#A08;text-decoration:underline;"> Move to position 1, 1</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE224"></a><span style="color:#A08;text-decoration:underline;"> Use the numbers passed in</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE230"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE231"></a><span style="color:#A08;text-decoration:underline;"> Clear the screen</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE232"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE241"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE242"></a><span style="color:#A08;text-decoration:underline;"> Write to the stream</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE243"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE247"></a><span style="color:#A08;text-decoration:underline;"> Ignore potential errors like something</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE248"></a><span style="color:#A08;text-decoration:underline;"> not compatible with this stream being</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE249"></a><span style="color:#A08;text-decoration:underline;"> passed in</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE252"></a><span style="color:#A08;text-decoration:underline;"> Switch on the object passed in</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE256"></a><span style="color:#A08;text-decoration:underline;"> Show text</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE267"></a><span style="color:#A08;text-decoration:underline;"> Move to a different position</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE275"></a><span style="color:#A08;text-decoration:underline;"> Move to the next line</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE284"></a><span style="color:#A08;text-decoration:underline;"> Additional objects here</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE288"></a><span style="color:#A08;text-decoration:underline;"> Return this object to allow chains</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE293"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE294"></a><span style="color:#A08;text-decoration:underline;"> Read from the stream (get input)</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE295"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE323"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE324"></a><span style="color:#A08;text-decoration:underline;"> Get current x location</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE325"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE328"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE329"></a><span style="color:#A08;text-decoration:underline;"> Get current y location</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE330"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE333"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE334"></a><span style="color:#A08;text-decoration:underline;"> Set current x location</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE335"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE338"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE339"></a><span style="color:#A08;text-decoration:underline;"> Set current y location</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE340"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE343"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE344"></a><span style="color:#A08;text-decoration:underline;"> Move to a new location</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE345"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE352"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE353"></a><span style="color:#A08;text-decoration:underline;"> Private visibility</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE354"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE363"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE364"></a><span style="color:#A08;text-decoration:underline;"> The main console object</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE365"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE368"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE369"></a><span style="color:#A08;text-decoration:underline;"> Passing a CioText object to a CStream outputs text to the stream</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE370"></a><span style="color:#A08;text-decoration:underline;"> and moves the current position horizontally.</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE371"></a><span style="color:#A08;text-decoration:underline;"> cio << CScreenText("Hello, world!")</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE372"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE376"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE377"></a><span style="color:#A08;text-decoration:underline;"> Public visibility</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE378"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE381"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE382"></a><span style="color:#A08;text-decoration:underline;"> Construct a CioText</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE383"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE390"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE391"></a><span style="color:#A08;text-decoration:underline;"> Cast to string</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE392"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE395"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE396"></a><span style="color:#A08;text-decoration:underline;"> Check if we should keep this string</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE397"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE400"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE401"></a><span style="color:#A08;text-decoration:underline;"> Private visibility</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE402"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE410"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE411"></a><span style="color:#A08;text-decoration:underline;"> Passing a CioMove object to a CStream moves the current position</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE412"></a><span style="color:#A08;text-decoration:underline;"> by x, y *characters*, not pixels</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE413"></a><span style="color:#A08;text-decoration:underline;"> cio << CioMove(2, 2)</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE414"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE418"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE419"></a><span style="color:#A08;text-decoration:underline;"> Public visibility</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE420"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE423"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE424"></a><span style="color:#A08;text-decoration:underline;"> Construct a CioMove</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE425"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE432"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE433"></a><span style="color:#A08;text-decoration:underline;"> Get the x coord</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE434"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE437"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE438"></a><span style="color:#A08;text-decoration:underline;"> Get the y coord</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE439"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE442"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE443"></a><span style="color:#A08;text-decoration:underline;"> Private visibility</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE444"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE452"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE453"></a><span style="color:#A08;text-decoration:underline;"> Passing a CioLine to a CScreen positions the cursor on the start</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE454"></a><span style="color:#A08;text-decoration:underline;"> of the next line.</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE455"></a><span style="color:#A08;text-decoration:underline;"> cio << CioText("One") << CioLine() << CioText("Two")</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE456"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE459"></a><span style="color:#A08;text-decoration:underline;">-----------------------------------------------------------</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE460"></a><span style="color:#A08;text-decoration:underline;"> An array</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE461"></a><span style="color:#A08;text-decoration:underline;">-----------------------------------------------------------</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE465"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE466"></a><span style="color:#A08;text-decoration:underline;"> Public visibility</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE467"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE470"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE471"></a><span style="color:#A08;text-decoration:underline;"> Constructor</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE472"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE477"></a><span style="color:#A08;text-decoration:underline;"> Bound is okay</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE482"></a><span style="color:#A08;text-decoration:underline;"> Bound is no good</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE487"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE488"></a><span style="color:#A08;text-decoration:underline;"> Subscript operator</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE489"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE492"></a><span style="color:#A08;text-decoration:underline;"> Check bounds</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE495"></a><span style="color:#A08;text-decoration:underline;"> Within bounds</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE500"></a><span style="color:#A08;text-decoration:underline;"> Out of bounds</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE507"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE508"></a><span style="color:#A08;text-decoration:underline;"> Get the upper bound</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE509"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE512"></a><span style="color:#A08;text-decoration:underline;"> Return the upper bound</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE516"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE517"></a><span style="color:#A08;text-decoration:underline;"> Deconstructor</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE518"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE525"></a><span style="color:#A08;text-decoration:underline;"> Release this object</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE530"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE531"></a><span style="color:#A08;text-decoration:underline;"> Private visibility</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE532"></a><span style="color:#A08;text-decoration:underline;"></span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE540"></a><span style="color:#A08;text-decoration:underline;">-----------------------------------------------------------</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE541"></a><span style="color:#A08;text-decoration:underline;"> Wait for a key, ignoring arrow keys</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE542"></a><span style="color:#A08;text-decoration:underline;"> returns - the key pressed</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE543"></a><span style="color:#A08;text-decoration:underline;">-----------------------------------------------------------</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE558"></a><span style="color:#A08;text-decoration:underline;">-----------------------------------------------------------</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE559"></a><span style="color:#A08;text-decoration:underline;"> Delime a number for readability</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE560"></a><span style="color:#A08;text-decoration:underline;"> num! - number to delime</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE561"></a><span style="color:#A08;text-decoration:underline;"> delimer - string to delime with (ie: ", ")</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE562"></a><span style="color:#A08;text-decoration:underline;"> returns - the result</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE563"></a><span style="color:#A08;text-decoration:underline;">-----------------------------------------------------------</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE567"></a><span style="color:#A08;text-decoration:underline;"> String to return</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE568"></a><span style="color:#A08;text-decoration:underline;"> Number as a string</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE569"></a><span style="color:#A08;text-decoration:underline;"> Number of digits in the string</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE570"></a><span style="color:#A08;text-decoration:underline;"> Numbers of digits over and above even triplets</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE571"></a><span style="color:#A08;text-decoration:underline;"> Index variable</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE573"></a><span style="color:#A08;text-decoration:underline;"> Cast the number to a string</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE576"></a><span style="color:#A08;text-decoration:underline;"> Get the length of the string (number of digits)</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE579"></a><span style="color:#A08;text-decoration:underline;"> See how many digits run out of triplets</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE580"></a><span style="color:#A08;text-decoration:underline;"> "123" -> 0</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE581"></a><span style="color:#A08;text-decoration:underline;"> "1234" -> 1</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE582"></a><span style="color:#A08;text-decoration:underline;"> "12345" -> 2</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE583"></a><span style="color:#A08;text-decoration:underline;"> "123456" -> 0</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE586"></a><span style="color:#A08;text-decoration:underline;"> Loop over the string starting at the first digit that</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE587"></a><span style="color:#A08;text-decoration:underline;"> is part of a triplet of numbers</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE590"></a><span style="color:#A08;text-decoration:underline;"> If this is not the left-most triplet</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE593"></a><span style="color:#A08;text-decoration:underline;"> Add in the delimiter</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE596"></a><span style="color:#A08;text-decoration:underline;"> Add to the return string</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE600"></a><span style="color:#A08;text-decoration:underline;"> Add numbers not in triplets to the return string</span>, <a href="#ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE603"></a><span style="color:#A08;text-decoration:underline;"> Return the result</span></span>
<span style="font-family:courier;font-size:11px;white-space:pre;"><span style="color:#F80;">
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE1"></a><span style="color:#084;font-style:italic;">//-----------------------------------------------------------</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE2"></a><span style="color:#084;font-style:italic;">// All contents copyright 2004, Colin James Fitzpatrick</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE3"></a><span style="color:#084;font-style:italic;">// All rights reserved. YOU MAY NOT REMOVE THIS NOTICE</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE4"></a><span style="color:#084;font-style:italic;">// Read LICENSE.txt for licensing info</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE5"></a><span style="color:#084;font-style:italic;">//-----------------------------------------------------------</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE6"></a></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE7"></a><span style="color:#084;font-style:italic;">//-----------------------------------------------------------</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE8"></a><span style="color:#084;font-style:italic;">// RPGToolkit, Version 3.05 - System Library</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE9"></a><span style="color:#084;font-style:italic;">//-----------------------------------------------------------</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE10"></a></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE11"></a><span style="color:#084;font-style:italic;">//-----------------------------------------------------------</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE12"></a><span style="color:#084;font-style:italic;">// A file</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE13"></a><span style="color:#084;font-style:italic;">//-----------------------------------------------------------</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE14"></a></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE15"></a><span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE16"></a> </a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE17"></a><span style="color:#084;font-style:italic;">//</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE18"></a><span style="color:#084;font-style:italic;">// Public visibility</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE19"></a><span style="color:#084;font-style:italic;">//</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE20"></a> </a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE21"></a> </a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE22"></a><span style="color:#084;font-style:italic;">//</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE23"></a><span style="color:#084;font-style:italic;">// Construct a file</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE24"></a><span style="color:#084;font-style:italic;">//</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE25"></a> <span style="color:#00F;font-weight:bold;">method CFile</span><span style="color:#94F;">(file, folder)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE26"></a> <span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE27"></a> <span style="color:#F00;font-weight:bold;font-style:italic;">m_file</span> <span style="color:#94F;">=</span> file</a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE28"></a> <span style="color:#F00;font-weight:bold;font-style:italic;">m_folder</span> <span style="color:#94F;">=</span> folder</a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE29"></a> <span style="color:#00F;font-weight:bold;">openFileBinary</span><span style="color:#94F;">(m_file, m_folder)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE30"></a> <span style="color:#94F;">}</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE31"></a> </a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE32"></a><span style="color:#084;font-style:italic;">//</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE33"></a><span style="color:#084;font-style:italic;">// Write to the file</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE34"></a><span style="color:#084;font-style:italic;">//</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE35"></a> <span style="color:#00F;font-weight:bold;">method operator<<</span><span style="color:#94F;">(in)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE36"></a> <span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE37"></a> <span style="color:#00F;font-weight:bold;">if</span><span style="color:#94F;">(<span style="color:#048;">m_mode!</span> == <span style="color:#F80;">0</span>)</span><span style="color:#94F;">{</span>m_mode! = 1<span style="color:#94F;">}</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE38"></a> <span style="color:#00F;font-weight:bold;">if</span><span style="color:#94F;">(<span style="color:#048;">m_mode!</span> == <span style="color:#F80;">1</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE39"></a> <span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE40"></a> <span style="color:#00F;font-weight:bold;">local</span><span style="color:#94F;">(<span style="color:#048;">i!</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE41"></a> <span style="color:#00F;font-weight:bold;">local</span><span style="color:#94F;">(<span style="color:#048;">len!</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE42"></a> <span style="color:#048;">len!</span> <span style="color:#94F;">=</span> <span style="color:#00F;font-weight:bold;">len</span><span style="color:#94F;">(in)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE43"></a> <span style="color:#00F;font-weight:bold;">for</span><span style="color:#94F;">(<span style="color:#048;">i!</span> <= <span style="color:#048;">len!</span>; <span style="color:#048;">i!</span>++)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE44"></a> <span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE45"></a> <span style="color:#00F;font-weight:bold;">filePut</span><span style="color:#94F;">(m_file, <span style="color:#00F;font-weight:bold;">charAt</span><span style="color:#94F;">(in, <span style="color:#048;">i!</span>)</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE46"></a> </a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE47"></a> <span style="color:#94F;">}</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE48"></a> <span style="color:#00F;font-weight:bold;">filePut</span><span style="color:#94F;">(m_file, <span style="color:#00F;font-weight:bold;">chr</span><span style="color:#94F;">(0)</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE49"></a> </a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE50"></a> <span style="color:#94F;">}</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE51"></a> </a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE52"></a> <span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE53"></a> <span style="color:#00F;font-weight:bold;">debugger</span><span style="color:#94F;">(<span style="color:#888;">"Call changeMode() before writing!"</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE54"></a> <span style="color:#94F;">}</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE55"></a> <span style="color:#00F;font-weight:bold;">returnMethod</span><span style="color:#94F;">(this)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE56"></a> <span style="color:#94F;">}</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE57"></a> </a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE58"></a><span style="color:#084;font-style:italic;">//</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE59"></a><span style="color:#084;font-style:italic;">// Read from the file</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE60"></a><span style="color:#084;font-style:italic;">//</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE61"></a> <span style="color:#00F;font-weight:bold;">method operator>></span><span style="color:#94F;">(out)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE62"></a> <span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE63"></a> <span style="color:#00F;font-weight:bold;">if</span><span style="color:#94F;">(<span style="color:#048;">m_mode!</span> == <span style="color:#F80;">0</span>)</span><span style="color:#94F;">{</span>m_mode! = 2<span style="color:#94F;">}</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE64"></a> <span style="color:#00F;font-weight:bold;">if</span><span style="color:#94F;">(<span style="color:#048;">m_mode!</span> == <span style="color:#F80;">2</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE65"></a> <span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE66"></a> <span style="color:#00F;font-weight:bold;">local</span><span style="color:#94F;">(<span style="color:#048;">done!</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE67"></a> <span style="color:#00F;font-weight:bold;">local</span><span style="color:#94F;">(char)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE68"></a> <span style="color:#00F;font-weight:bold;">local</span><span style="color:#94F;">(null)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE69"></a> <span style="color:#00F;font-weight:bold;">local</span><span style="color:#94F;">(toRet)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE70"></a> <span style="color:#F00;font-weight:bold;font-style:italic;">null</span> <span style="color:#94F;">=</span> <span style="color:#00F;font-weight:bold;">chr</span><span style="color:#94F;">(0)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE71"></a> <span style="color:#00F;font-weight:bold;">until</span><span style="color:#94F;">(<span style="color:#048;">done!</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE72"></a> <span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE73"></a> <span style="color:#F00;font-weight:bold;font-style:italic;">char</span> <span style="color:#94F;">=</span> <span style="color:#00F;font-weight:bold;">fileGet</span><span style="color:#94F;">(m_file)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE74"></a> <span style="color:#00F;font-weight:bold;">if</span><span style="color:#94F;">(char == null)</span><span style="color:#94F;">{</span>done! = true<span style="color:#94F;">}</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE75"></a> else<span style="color:#94F;">{</span>toRet += char<span style="color:#94F;">}</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE76"></a> </a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE77"></a> <span style="color:#94F;">}</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE78"></a> <span style="color:#F00;font-weight:bold;font-style:italic;">out</span> <span style="color:#94F;">=</span> toRet</a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE79"></a> <span style="color:#94F;">}</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE80"></a> </a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE81"></a> <span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE82"></a> <span style="color:#F00;font-weight:bold;font-style:italic;">out</span> <span style="color:#94F;">=</span> <span style="color:#888;">""</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE83"></a> <span style="color:#00F;font-weight:bold;">debugger</span><span style="color:#94F;">(<span style="color:#888;">"Call changeMode() before reading!"</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE84"></a> <span style="color:#94F;">}</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE85"></a> <span style="color:#00F;font-weight:bold;">returnMethod</span><span style="color:#94F;">(out)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE86"></a> <span style="color:#00F;font-weight:bold;">returnMethod</span><span style="color:#94F;">(this)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE87"></a> <span style="color:#94F;">}</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE88"></a> </a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE89"></a><span style="color:#084;font-style:italic;">//</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE90"></a><span style="color:#084;font-style:italic;">// Write a number to the file</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE91"></a><span style="color:#084;font-style:italic;">//</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE92"></a> <span style="color:#00F;font-weight:bold;">method writeBytes</span><span style="color:#94F;">(<span style="color:#048;">bytes!</span>, <span style="color:#048;">num!</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE93"></a> <span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE94"></a> <span style="color:#00F;font-weight:bold;">if</span><span style="color:#94F;">(<span style="color:#048;">m_mode!</span> == <span style="color:#F80;">0</span>)</span><span style="color:#94F;">{</span>m_mode! = 1<span style="color:#94F;">}</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE95"></a> <span style="color:#00F;font-weight:bold;">if</span><span style="color:#94F;">(<span style="color:#048;">m_mode!</span> == <span style="color:#F80;">1</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE96"></a> <span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE97"></a> <span style="color:#00F;font-weight:bold;">debugger</span><span style="color:#94F;">(<span style="color:#888;">"Call changeMode() before writing!"</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE98"></a> <span style="color:#94F;">}</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE99"></a> </a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE100"></a> <span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE101"></a> <span style="color:#00F;font-weight:bold;">local</span><span style="color:#94F;">(<span style="color:#048;">i!</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE102"></a> <span style="color:#00F;font-weight:bold;">for</span><span style="color:#94F;">(<span style="color:#048;">i!</span> <= <span style="color:#048;">bytes!</span>; <span style="color:#048;">i!</span>++)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE103"></a> <span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE104"></a> <span style="color:#00F;font-weight:bold;">local</span><span style="color:#94F;">(<span style="color:#048;">prev!</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE105"></a> <span style="color:#048;">prev!</span> <span style="color:#94F;">=</span> <span style="color:#048;">i!</span> <span style="color:#94F;">-</span> 1</a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE106"></a> <span style="color:#048;">toWrite!</span> <span style="color:#94F;">=</span> <span style="color:#048;">num!</span> >> 8 <span style="color:#94F;">*</span> <span style="color:#048;">prev!</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE107"></a> <span style="color:#F00;font-weight:bold;font-style:italic;">toWrite! &</span> <span style="color:#94F;">=</span> 255</a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE108"></a> <span style="color:#00F;font-weight:bold;">filePut</span><span style="color:#94F;">(m_file, <span style="color:#00F;font-weight:bold;">chr</span><span style="color:#94F;">(<span style="color:#048;">toWrite!</span>)</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE109"></a> </a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE110"></a> <span style="color:#94F;">}</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE111"></a> <span style="color:#94F;">}</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE112"></a> <span style="color:#94F;">}</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE113"></a> </a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE114"></a><span style="color:#084;font-style:italic;">//</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE115"></a><span style="color:#084;font-style:italic;">// Read a number from the file</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE116"></a><span style="color:#084;font-style:italic;">//</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE117"></a> <span style="color:#00F;font-weight:bold;">method readBytes</span><span style="color:#94F;">(<span style="color:#048;">bytes!</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE118"></a> <span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE119"></a> <span style="color:#00F;font-weight:bold;">if</span><span style="color:#94F;">(<span style="color:#048;">m_mode!</span> == <span style="color:#F80;">0</span>)</span><span style="color:#94F;">{</span>m_mode! = 2<span style="color:#94F;">}</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE120"></a> <span style="color:#00F;font-weight:bold;">if</span><span style="color:#94F;">(<span style="color:#048;">m_mode!</span> == <span style="color:#F80;">2</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE121"></a> <span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE122"></a> <span style="color:#00F;font-weight:bold;">debugger</span><span style="color:#94F;">(<span style="color:#888;">"Call changeMode() before reading!"</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE123"></a> <span style="color:#94F;">}</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE124"></a> </a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE125"></a> <span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE126"></a> <span style="color:#00F;font-weight:bold;">local</span><span style="color:#94F;">(<span style="color:#048;">i!</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE127"></a> <span style="color:#00F;font-weight:bold;">local</span><span style="color:#94F;">(<span style="color:#048;">raw!</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE128"></a> <span style="color:#00F;font-weight:bold;">local</span><span style="color:#94F;">(<span style="color:#048;">prev!</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE129"></a> <span style="color:#00F;font-weight:bold;">local</span><span style="color:#94F;">(<span style="color:#048;">toRet!</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE130"></a> <span style="color:#00F;font-weight:bold;">for</span><span style="color:#94F;">(<span style="color:#048;">i!</span> <= <span style="color:#048;">bytes!</span>; <span style="color:#048;">i!</span>++)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE131"></a> <span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE132"></a> <span style="color:#048;">raw!</span> <span style="color:#94F;">=</span> <span style="color:#00F;font-weight:bold;">asc</span><span style="color:#94F;">(fileGet<span style="color:#94F;">(</span>m_file)</span><span style="color:#94F;">)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE133"></a> <span style="color:#048;">prev!</span> <span style="color:#94F;">=</span> <span style="color:#048;">i!</span> <span style="color:#94F;">-</span> 1</a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE134"></a> <span style="color:#F00;font-weight:bold;font-style:italic;">raw! <<</span> <span style="color:#94F;">=</span> <span style="color:#048;">prev!</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE135"></a> <span style="color:#F00;font-weight:bold;font-style:italic;">toRet! |</span> <span style="color:#94F;">=</span> <span style="color:#048;">raw!</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE136"></a> </a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE137"></a> <span style="color:#94F;">}</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE138"></a> <span style="color:#00F;font-weight:bold;">returnMethod</span><span style="color:#94F;">(<span style="color:#048;">toRet!</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE139"></a> <span style="color:#94F;">}</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE140"></a> <span style="color:#94F;">}</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE141"></a> </a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE142"></a><span style="color:#084;font-style:italic;">//</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE143"></a><span style="color:#084;font-style:italic;">// Change current access mode</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE144"></a><span style="color:#084;font-style:italic;">//</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE145"></a> <span style="color:#00F;font-weight:bold;">method changeMode</span><span style="color:#94F;">()</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE146"></a> <span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE147"></a> <span style="color:#00F;font-weight:bold;">if</span><span style="color:#94F;">(<span style="color:#048;">m_mode!</span> == <span style="color:#F80;">0</span>)</span></a>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE148"></a> <span style="color:#94F;">{</span>
<a name="ID41d149dfbc0286643d3ee3a5c3ae1d7dLINE149"></a> <span style="color:#048;">m_ptr!</span> <span style="color:#94F;">=</span> 0</a>
<a name="ID41d149dfbc0286643d3