mmcirvin: (Default)
[personal profile] mmcirvin

Koch snowflake curve in white on black, drawn with 1980s Atari BASIC
This is only the tribute.

I was fascinated by turtle graphics, as embodied in the computer language LOGO, which was intended for kids. This is a system where your drawing cursor, the "turtle", has a position and a movement direction associated with it, and takes relative angular rotation and forward movement instructions. It's good for drawing things like simple fractals and certain mathematical curves.

The first thing I implemented, I recall, was an interactive turtle graphics system where the user chose commands directly from a menu by number. But that was pretty limited for anything other than simple geometric doodling. What I really wanted was a turtle-graphics library I could call from BASIC. Well, in a language that doesn't even really have functions that is a kind of awkward thing to manage, but I did figure out that I could have a kind of named GOSUB by assigning a line number to a variable, so that was nice. I just had to put all my "arguments" in special global variables and then call GOSUB TURN or GOSUB DRAW, etc. Then I had a sort of BASIC program skeleton I could save on a floppy, load whenever I wanted and put my little application at the beginning. It was sort of a mess, but it worked. It's long-gone, but today I reconstructed something like it in a couple of hours.

Date: 2019-06-30 10:52 am (UTC)
jwgh: (Default)
From: [personal profile] jwgh
The color artifacting you were talking about recently is here in spades and it definitely brings me back.

Date: 2019-07-01 01:14 am (UTC)
jwgh: (Default)
From: [personal profile] jwgh
This is a good point. And even without that, the letters in 'READY' are so boxy and wide!

Date: 2019-07-01 02:05 am (UTC)
secretagentmoof: (Default)
From: [personal profile] secretagentmoof
Applesoft did have ON A GOTO 10,20,30,40,50 so you could just GOSUB to a statement that had that. Speaking of Applesoft, it also had "shape tables" which encoded a series of vector graphics instructions. Slow as the dickens, though.

Date: 2019-07-02 06:16 pm (UTC)
secretagentmoof: (Default)
From: [personal profile] secretagentmoof
Yeah, that's what you'd think from reading the description; in practice, they were all semi-interpreted for each and every render. The Apple II's graphics model (Bizarro vertical layout; and then 1 color mode bit per byte, and then two bits at a time selecting which color is rendered) made individual pixel plotting slow and painful. Everybody who cared about performance precalculated masks and pre-shifted graphics blocks.

Date: 2019-06-30 02:06 pm (UTC)
dewline: "Not Fail" (not fail)
From: [personal profile] dewline
Looks okay, given the plan as described there.

Date: 2019-06-30 03:02 pm (UTC)
thewayne: (Default)
From: [personal profile] thewayne
IIRC, Python has a LOGO/Turtle library if you ever really want to play with it again in something slightly more modern....

February 2026

S M T W T F S
1234567
8910 11121314
15 161718192021
22232425262728

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Apr. 10th, 2026 05:56 pm
Powered by Dreamwidth Studios