<div dir="ltr">IMPORT SYSTEM<div><br></div><div>is a directive to the compiler so that it can do unsafe things. All of the procedures are documented in the documentation that comes with the system. These are things like type coercion, bit shifts, and a few other very low level things that are done when talking to the hardware.</div>
<div><br></div><div>I think it is very open. It is documented everywhere, and has been part of Wirth's languages for a long time, possibly as early as Modula-2.</div><div><br></div><div>It's primary purpose serves documentation and safety. The compiler will not emit tricky code unless SYSTEM is in the import list, and you can quickly search for the string "SYSTEM" + "." to locate everywhere in the source where these tricks are used.</div>
<div><br></div><div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Apr 18, 2014 at 11:05 AM, eas lab <span dir="ltr"><<a href="mailto:lab.eas@gmail.com" target="_blank">lab.eas@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Thanks for the pointers.<br>
<br>
Today I tried to trace the M.P route of how eg. ET.* gets to the VGA-port.<br>
[Like you CAN trace how http* arrives via a serial-port-modem ...etc.]<br>
For ETH Oberon (2.4.3) for Linux x86 and<br>
V4/oberon-1.7.02/Source and my<br>
source1, 2, 3.arc which I guess comes from Native;<br>
in all cases the path is concealed at: IMPORT SYSTEM.<br>
Some of us resent that. Oberon may have had a better following if<br>
it had been open. OTOH perhaps that was not possible?<br>
<br>
== Chris Glur.<br>
<div class="im HOEnZb"><br>
<br>
On 4/17/14, Jörg <<a href="mailto:joerg.straube@iaeth.ch">joerg.straube@iaeth.ch</a>> wrote:<br>
> Chris<br>
><br>
> 1) The RISCv5 machine has a memory of 1 MByte = 000000H.. 0FFFFFH.<br>
> This memory is used to hold your code and store your variables.<br>
> A dedicated region at the high end of this memory (namely from<br>
> 0E7F00H .. 0FFF00H) is called "framebuffer"; this memory region<br>
> is used to store all pixels that are displayed on the screen.<br>
><br>
> 2) The module "Display.Mod" provides all low layer routines to<br>
> store pixels into this memory region. E.g. the procedure<br>
> Display.Dot(col, x, y, mode: INTEGER) "draws" a dot at location<br>
> (x/y). But it does not actually draw the point but "just" stores<br>
> a bit in this dedicated "framebuffer" memory.<br>
><br>
> 3) In parallel, the video driver "VID" (written in Verilog) permanently<br>
> reads this special framebuffer memory and copies all bits over and<br>
> over again to the VGA monitor. The whole framebuffer memory<br>
> (96 kByte) is copied 70 times per second to the monitor.<br>
><br>
> Hope this helps.<br>
><br>
> br<br>
> Jörg<br>
><br>
> -----Original Message-----<br>
> From: Paul Thomas Melville [mailto:<a href="mailto:ptmelville@gmail.com">ptmelville@gmail.com</a>]<br>
> Sent: Donnerstag, 17. April 2014 13:46<br>
</div><div class="HOEnZb"><div class="h5">> To: ETH Oberon and related systems<br>
> Subject: Re: [Oberon] RISC5<br>
><br>
> On Thu, Apr 17, 2014 at 10:58 AM, eas lab <<a href="mailto:lab.eas@gmail.com">lab.eas@gmail.com</a>> wrote:<br>
><br>
>> The hidden/mysterious part for me is the display/textFrames.<br>
>> Does V5 drive standard VGA?<br>
>> Where's the code showing;<br>
>> VGA -> FrameBuffer -> ETHOviewer.<br>
><br>
> You can find information in section 9.1, 4.5 and 17.2.4 of Project Oberon.<br>
><br>
> --<br>
> <a href="mailto:Oberon@lists.inf.ethz.ch">Oberon@lists.inf.ethz.ch</a> mailing list for ETH Oberon and related systems<br>
> <a href="https://lists.inf.ethz.ch/mailman/listinfo/oberon" target="_blank">https://lists.inf.ethz.ch/mailman/listinfo/oberon</a><br>
><br>
<br>
--<br>
<a href="mailto:Oberon@lists.inf.ethz.ch">Oberon@lists.inf.ethz.ch</a> mailing list for ETH Oberon and related systems<br>
<a href="https://lists.inf.ethz.ch/mailman/listinfo/oberon" target="_blank">https://lists.inf.ethz.ch/mailman/listinfo/oberon</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><font face="'times new roman', serif">Aubrey McIntosh, Ph.D.<br>211 E. 5th St.<br>Morris MN 56267</font><div><div><span style="line-height:20px;background-color:rgb(255,255,255)"><font face="'times new roman', serif">(512)-348-7401</font></span></div>
</div><div><div><br></div></div>
</div>