home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Loadstar 128 41
/
q41.d81
/
t.multiplot
< prev
next >
Wrap
Text File
|
2022-08-28
|
12KB
|
289 lines
M u l t i P l o t 1 2 8 v1.2
Program and text by Brian Crosthwaite
noesis0@rmci.net
Back in the early 1980s I was working on a program on an HP-3000
Mainframe when a gentleman asked if I needed any assistance. While there is
a long story that fits in about here, it has been told often and is well
known within the Commodore community. This guy was excited about getting a
computer called the Commodore 64.
A month later I was programming my new C64. I did some of my homework
assignments on it, transcribed the programs from the screen by hand and
typed them in on the HP over at the University.
One of the first things I did was get into graphics. I loved (and still
do) plotting points on a screen. While teachers were saying the most
powerful command on the computer was PRINT, I was using PLOT. Well, okay, I
was calculating and setting a POKE to plot a dot. To me, THAT was the most
powerful command a computer had.
One of the first mathematical pictures I ever concocted was a Nexus
design called SnailSkin. It was so named because it resembled a snail-shell
with a rattlesnake's skin texture.
The Nexus design is a simple one. In this case, it is achieved by an
arch made on the screen with several dots. The arch is repeated with a
greater radius with more dots. It looks like the side would get flat,
eventually, but that would be no flatter than the earth itself is as is a
perfect curve. The perfect curve, however, is not perfect as the pixels on
the 64/128 screen are not square, so I've fudged the curve of the arch to
make it look round -- and it is not the outside roundness but the actual
Nexus curve that I've fudged.
Several years later, a group of many of the graphics modules I had
written were published. I then grouped the MODs into one place, within GEOS
it was called geoGraphs. The next version was the Amiga version called
MultiPlot. This version was unique in that you could suspend any of the
plots and enter a new one, and another one and another one, and so on, plus
it had music (something I had originally planned to add to this version
before my back went south) and I incorporated geoMandelbrot and 3D-Run (an
Atari ST originating Graph) as two of the Graphs. The Cir MOD became
Zebra.
On the Mac, it appeared as MacGraphs. The program was a strange black
and white version with no pulldown menus. It programmed well onto the Atari
ST (no music, although the ST and GEOS versions are the only ones that
print).
It finally landed on the Commodore 128. It does not require anything
other than a stock 128 to run. The menu is on the 80-column screen while
drawing takes place on the 40-column screen. I have two monitors hooked up
to my 128D, a TV can be used for 40 column as well. However, the program
can also be run, switching the monitor mode from the 80-column to 40-column
modes with the video mode switch.
There is a limit (10) as to how many MODs or Plots you can run at the
same time, but once one Plot has finished you can initiate another. Many of
the variables are shared by different Plots, so the results can be...not
quite as expected. If you want to see each plot played out as it was
originally written to be, simply clear the screen and reset the variables
before selecting a Plot.
With this version (v1.2) of MultiPlot comes a new Plot called Invortex.
(As if a vortex isn't weird enough!)
Pictures from Lightning (LOADSTAR 128 #38) can be loaded in for further
processing. This can add some real strange effects to some already weird
pictures.
In this version you can't readily exit any of the plots, except the
Fractal II routine. Because the Fractal II takes a long time to render out,
it can be painful waiting when you have changed your mind.
Aside from the Plots and the Exit Fractal II feature, the remaining
menu items are the same as in Lightning.
THE MENUS
---------
Menu items are selected by pressing the highlighted (reverse video)
letter.
PROJECT
-------
About
-----
Pressing <A> will bring up the About Screen. This is the same screen
you see when you first load the program. If you missed it, you didn't miss
much. There are two About Screens: 80- and 40-column. The 40-column one
appears at any time this is selected, the 80-column only appears if no
plots are rendering.
Load
----
Loads the files that make up a picture. A directory will appear on the
right hand side of the 80 column screen (also known as the menu screen).
Files that have .PIC and .COL are the ones you are looking for here. If all
you want is a directory, simply hit <RETURN> without entering anything. To
pause the directory scrolling, press the <NO SCROLL> key at the top center
of your computer.
NOTE: On JiffyDOS CMD equipment only the .PIC files will show up on screen
when the directory is called up.
Save
----
Saves the picture as a set of files. A directory will appear on the
right hand side of the menu screen. The .PIC and .COL are added
automatically. If you change your mind and don't want to save, simply press
<RETURN> without entering anything. To pause the directory scrolling, press
the <NO SCROLL> key at the top center of your computer.
Logged dr ( / )
---------------
Pressing the slash </> key will change the logged drive. MultiPlot V1.2
supports up to 30 drives.
Send dr cmd ( @ )
-----------------
Pressing the AT key (@) will allow you to send drive commands for
navigation on hard drives and RAMLinks and such. To check the drive status,
press RETURN without entering anything.
Quit
----
Zips you out of MultiPlot when you decide you have really had enough.
PLOT
----
Fractal II F1
-------------
This is actually a new version, but since it looks the same as Fractal
II, I didn't change the name. Once again I shrunk the code, but it didn't
speed up much. This was originally uploaded onto QLink (and written) by
Fractalle. I wrote a GEOS version of it with some minor tweaking, it was
tweaked again on the Amiga & ST versions and then a final big tweak here.
This one has the longest rendering time and can be aborted by pressing
<X>.
SnailSkin F2
------------
One of my first, and still my most favorite graphics to date is the
SnailSkin. This is a Nexus formed by a simple perfect arch. It is distorted
here to preserve the pure Nexus shape.
The formula used is a simple circle plot formula:
x=INT(xc+v*xf*SIN(N/(c/2)*PI)
y=INT(yc-v*yf*COS(N/(c/2)*PI)
where x and y are coordinates (x,y); v and N are loop values (v=1 to
usually the yc and N=degrees 0 to what ever v is at in a given loop); xc
and yc are the center of the screen; the following + or - simply determines
the direction of the circular plot (from a control perspective); xf is
about 1 and yf is 1.3 (included to round out the screen).
Normally, in a standard circle, the rest of the equation would be the
sine of the number that represents degrees and since the computer does RADs
we convert it thus: DEG/180*PI. But here, we are changing the rules a bit.
180 degrees is half a circle and we want to change the laws of Euclidean
Geometry a tad so we will start off with a different number, .05, and each
time we come by to calculate, it will be incremented by .05.
Sine Morae F3
-------------
Pronounced as it is written in the menu, SIN More is the actual
spelling, but it looks like something else. This is also a Nexus but it
folds out from infinity to an origin, while it is a 2-dimensional plot
using only x and y coordinates, it plots a 3-dimensional image (with a
little imagination).
This is an inside out variation on the Snail. In this case we add a
twist to the base circle by dividing the c factor by 4 in x and 5 in y
forcing the plot to apparently leave the 2-dimensional constraints of our
plotting field. The inverse is achieved by counting down from the xc to 0.
Zebra F4
--------
This was the Cir MOD of long ago. Zebra has changed slightly from the
last few computer platforms, but the mathematics has remained pretty much
the same. The second longest running Pl