[Oberon] Experimental Oberon released
Andreas Pirklbauer
andreas_pirklbauer at yahoo.com
Tue Jan 26 09:32:08 CET 2016
Hi Roel,
The idea to make Experimental Oberon co-exist with Original Oberon is a good one.
These are just a few hobby experiments that I started back around 1990 on a Ceres computer and that could now be moved forward to Oberon 2013, now that good emulators are available on modern computers. But even on Ceres (whose clock speed was measured in MHz and not in GHz), there was very little flickering on the screen. But one has to program for it, e.g. no redrawing of lines when the line space of a line doesn't in change. If you want you can further increase the efficiency of Insert and Delete, by counting the total deltas (dy) and readjust lines only when the sum of all deltas is different from zero. However, this would be another 50 lines or so of code and I decided it's (probably) not worth the effort (at least on modern computers there would be no visible difference). Already, 200 lines represents about 20% of TextFrames..
As a side comment, I also have a version of Original Oberon with a different Insert operation which, on the average, is about 25% faster than Original Oberon (not included in Experimental Oberon though).. On Ceres the difference was nicely visible. In Original Oberon, some lines are first overwritten by the newly inserted lines, and later redisplayed which means that the (raster) block move (CopyBlock) in the middle can't move a very large area in the frame buffer. The new code first uses the block move to adjust reusable lines, and then only displays individual lines in the cleared-up gap area. Surprising that this wasn't caught back then. The slower code was published.
Andreas
From: R. P. de Jong <rdjong at mac.com>
To: Andreas Pirklbauer <andreas_pirklbauer at yahoo.com>; ETH Oberon and related systems <oberon at lists.inf.ethz.ch>
Sent: Tuesday, January 26, 2016 2:22 AM
Subject: Re: [Oberon] Experimental Oberon released
Hi Andreas,
I just have tried out your "Experimental Oberon" in Oberon Workstation.
This is really a nice piece of work! The "live scrolling" is very smooth on the 80 Mc/s simulated RISC5. It even does not get "jerky" if set 20 Mc/s. Nice touch also that the scrolling speed can be chosen by dragging more to the right.
I have made a version of your files in which all the module names, commands etc. are renamed with the prefix "i" (takes the least space in menus). That way Experimental Oberon can co-exist with the standard Project Oberon in the same directory and booted into either one without changing any file.
Thanks for publishing this, and the professional documentation!
Roel P. de Jong
> On 23 Jan, 2016, at 13:16 , Andreas Pirklbauer <andreas_pirklbauer at yahoo.com> wrote:
>
> An experimental version of Original Oberon 2013 (called "Experimental Oberon") has been released on GitHub:
>
> https://github.com/andreaspirklbauer/Oberon-experimental
>
> Installation instructions for Experimental Oberon are provided in the README file:
>
> https://github.com/andreaspirklbauer/Oberon-experimental/blob/master/README.md
>
> A document describing the differences between Experimental Oberon and Original Oberon can be found in the Documentation folder:
>
> https://github.com/andreaspirklbauer/Oberon-experimental/blob/master/Documentation/DIFFERENCES-between-Experimental-Oberon-and-Original-Oberon.pdf
>
> The Documentation folder also contains a few demo videos (screen recordings), for example:
>
> https://github.com/andreaspirklbauer/Oberon-experimental/blob/master/Documentation/DemoMultipleVirtualDisplays.mov
>
> https://github.com/andreaspirklbauer/Oberon-experimental/blob/master/Documentation/DemoOberonContinuousFractionalLineScrollVariableLineSpace.mov
>
> If your browser cannot display these videos (or if GitHub prevents you from viewing such large files), you can click on the 'Raw' button to download the videos to your computer.
>
> The source code of Experimental Oberon can be found in the Sources folder:
>
> https://github.com/andreaspirklbauer/Oberon-experimental/tree/master/Sources
>
> Note: This version of Oberon has been released for purely experimental (and hobby) purposes. You can freely re-use it so long as you state the origin of the code.
>
> Andreas P.> --
> Oberon at lists.inf.ethz.ch mailing list for ETH Oberon and related systems
> https://lists.inf.ethz.ch/mailman/listinfo/oberon
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.inf.ethz.ch/pipermail/oberon/attachments/20160126/99fc6e99/attachment.html>
More information about the Oberon
mailing list