Live data from Hacker News

12-minute Mandelbrot: fractals on a 50 year old IBM 1401 mainframe

righto.com

31–40 of 42 posts

Re: 12-minute Mandelbrot: fractals on a 50 year old IBM 1401 mainframe

#31

I worked as a paid programmer on card systems in 1970. I'm not saying things were better then. Give me C++ and Python any day over Assembler. However, there was something magical about being able to step through your program one instruction at a time using a switch on the control panel, or being able to display and modify the memory with lights & toggle switches. It was like you were reaching right into the soul of t…

"However, there was something magical about being able to step through your program one instruction at a time using a switch on the control panel, or being able to display and modify the memory with lights & toggle switches."

Access to the hardware.

Would have killed for this as an undergrad, typing up 200 line FORTRAN programs via a IBM card punch type-writer. One mistake and you were back to the comp-centre to re-type of fix the card to resubmit the batch. ~ https://www.flickr.com/photos/bootload/tags/punchcard

Re: 12-minute Mandelbrot: fractals on a 50 year old IBM 1401 mainframe

#32

Earlier quoted context omitted.

I loved AK Dewdney's columns. The Core War [1] columns influenced me profoundly. Would love to see the mandelbrot printout scans :) [1] http://www.koth.org/info/akdewdney/

OK, just off the scanner: http://imgur.com/gallery/8z7zP Generated with a Commodore 64, output on an Epson RX80 dot matrix printer, circa 1986. All coding credit to my genius brother!

Gorgeous! :)

Re: 12-minute Mandelbrot: fractals on a 50 year old IBM 1401 mainframe

#33
post #26

I worked as a paid programmer on card systems in 1970. I'm not saying things were better then. Give me C++ and Python any day over Assembler. However, there was something magical about being able to step through your program one instruction at a time using a switch on the control panel, or being able to display and modify the memory with lights & toggle switches. It was like you were reaching right into the soul of t…

Reminds me of: http://www.columbia.edu/cu/computinghistory/fisk.pdf

That was an incredibly moving and insightful story. Really well written. I feel like I'm one of today's ten thousand :)

Re: 12-minute Mandelbrot: fractals on a 50 year old IBM 1401 mainframe

#34
post #21

Way back in 1985, a seminal 'Computer Recreations' column in Scientific American featured the Mandelbrot set: https://www.scientificamerican.com/media/inline/blog/File/De... (A K Dewdney's columns were always fantastic - a whole new world of wonder for early 'home computer' users!) After careful study, my brother coded it in assembly on a C64. We both had the idea to double the display resolution (from 320x200 to 640…

I wrote something similar in Apple ][+ Basic. It had a cool optimization: it would scan 16 points around the boundary of each 64x64 pixel block, and if they were all-black (in the set) or all-white, it would assume the rest of the block was the same and finish quickly. My dot-matrix printer had something like 2000 pixels of width and limited-only-by-patience height, so the printouts were amazingly detailed. I wish I'…

Edit: the wording "assumed" led me to interpret that you didn't know about this mathematical property, but perhaps you did!

You almost hit upon a real property of the set, namely that if you can find a closed contour of the interior, all the enclosed points are in the set...

A common variant of your approach, then, was to quad tree the area of interest and evaluate the boundary of each square, if it was consistent you just fill in the block, otherwise subdivide. This is a massive speed up for locations like the canonical initial view with large areas of the set shown...

... Of course the problem with this is you are sampling discretely, so inferring that the boundary is closed because a sampling of it is doesn't really work. Your filling in of the white blocks like this is particularly problematic, as that can easily cut off "children" in the set.

You can do this sort of approach properly, but it is a bit more complicated.

Re: 12-minute Mandelbrot: fractals on a 50 year old IBM 1401 mainframe

#35
post #7

Earlier quoted context omitted.

I'm glad someone reads my footnotes :-). About the rentals - most customers rented instead of buying. This had a huge effect on computer companies. Starting a competitor was extremely capital intensive since you had to build the computers up front and then you got revenue monthly, rather than from big sales. Rentals also made IBM conservative since they didn't want to introduce a new machine that would obsolete all t…

Just curious, what's the MTBF of those two machines at the museum? Hard to believe those those germanium transistors aren't all leaky as heck by now.

There's always something to repair - the 1401 restoration team (consisting of retired IBM engineers) is at the museum every Monday doing maintenance. The computers work most of the time, but the card readers take a lot of adjustment and they are still trying to get all the tape drives operational.

One nice thing about the 1401 is the gates swing open for easy access to the circuitry for hardware debugging. This picture from Wikipedia shows what debugging looks like, with an oscilloscope hooked up to the 1401: https://en.wikipedia.org/wiki/IBM_1401#/media/File:IBM_1401_...

The museum has a cabinet full of SMS cards, so if they find a problem, in most cases they can swap out the bad card. The card can then be fixed, usually by replacing the bad transistor.

At the start, fixing all the bad transistors was a huge problem, which is why it took the restoration team 10 years to get the 1401 running. The German machine in particular was a problem because it had been stored in an unheated garage for a decade, so there was a lot of corrosion. Some of the transistors would literally fall apart if you touched them. (This is what I'm told - I wasn't part of the restoration.) The other complication with the German machine is it included the "overlap" feature, which allowed overlapping of reading, punching, and computation for increased performance. A nice feature, but it made it much, much harder to figure out what was wrong.

Re: 12-minute Mandelbrot: fractals on a 50 year old IBM 1401 mainframe

#36
post #26

I worked as a paid programmer on card systems in 1970. I'm not saying things were better then. Give me C++ and Python any day over Assembler. However, there was something magical about being able to step through your program one instruction at a time using a switch on the control panel, or being able to display and modify the memory with lights & toggle switches. It was like you were reaching right into the soul of t…

Reminds me of: http://www.columbia.edu/cu/computinghistory/fisk.pdf

I enjoyed that story; my father could have written it, although at a large railroad as the setting. As per the very end of the story, lets just say it was into the 00s before we ran out of what seemed to be an infinite supply of bookmarks and art project stock paper.

I distinctly remember as a kid watching the first star trek movie on TV on a VCR tape and making a shoebox sized model "Enterprise" out of many used punch cards and about a roll of scotch tape, although that was hardly the only art project or whatever using punch cards.

I would say by the 90s the very concept of a punch card had pretty much disappeared from the general public conscious and general public people were mystified what my bookmarks were, what is that peculiar artifact I'm using as a bookmark?

Re: 12-minute Mandelbrot: fractals on a 50 year old IBM 1401 mainframe

#37
post #26

I worked as a paid programmer on card systems in 1970. I'm not saying things were better then. Give me C++ and Python any day over Assembler. However, there was something magical about being able to step through your program one instruction at a time using a switch on the control panel, or being able to display and modify the memory with lights & toggle switches. It was like you were reaching right into the soul of t…

Reminds me of: http://www.columbia.edu/cu/computinghistory/fisk.pdf

Discussed at https://news.ycombinator.com/item?id=8077739.

Re: 12-minute Mandelbrot: fractals on a 50 year old IBM 1401 mainframe

#38

Earlier quoted context omitted.

I loved AK Dewdney's columns. The Core War [1] columns influenced me profoundly. Would love to see the mandelbrot printout scans :) [1] http://www.koth.org/info/akdewdney/

OK, just off the scanner: http://imgur.com/gallery/8z7zP Generated with a Commodore 64, output on an Epson RX80 dot matrix printer, circa 1986. All coding credit to my genius brother!

Absolutely marvelous.

Do you and your genius brother still write code?

Re: 12-minute Mandelbrot: fractals on a 50 year old IBM 1401 mainframe

#39

Way back in 1985, a seminal 'Computer Recreations' column in Scientific American featured the Mandelbrot set: https://www.scientificamerican.com/media/inline/blog/File/De... (A K Dewdney's columns were always fantastic - a whole new world of wonder for early 'home computer' users!) After careful study, my brother coded it in assembly on a C64. We both had the idea to double the display resolution (from 320x200 to 640…

I haven't been active here, but have an account so I thought I'd chime in (being "the brother"!)...

That was great fun back then and I was (and still am) a total geek. I called the various programs "routines" back then, as they were commonly known.

There was a "plot routine" which would plot points in monochrome or colour, either on screen or on the virtual screen (i.e. the 32Kb of memory that included and went "past" the screen in RAM). The plot routine used fixed point math, which I coded in a separate portion, so was as precise as I wanted it to be. I forgot what that precision was now, but it was something like 4 or 8 bytes.

Then there was the "print routine" which took that memory and output it to the printer.

Finally, the main Mandelbrot/Julia routines were done using a direct translation of the A K Dewdney articles.

All the assembler code was written in a notebook and debugged by hand before even entering it, which was done in the Zeus Assembler. Would be cool if we could locate the notebooks. At least we have the 6510 source code.

Re: 12-minute Mandelbrot: fractals on a 50 year old IBM 1401 mainframe

#40
post #38

Earlier quoted context omitted.

OK, just off the scanner: http://imgur.com/gallery/8z7zP Generated with a Commodore 64, output on an Epson RX80 dot matrix printer, circa 1986. All coding credit to my genius brother!

Absolutely marvelous. Do you and your genius brother still write code?

Thanks for posting this fractallyte! We're separated by an ocean, so I'm glad I can see this digitised.

To answer you dang (first, I don't consider myself that), I work as a consultant currently writing C#/.NET code for a large corporation. But hopefully one of my side projects (using various other technology stacks) will pan out one day, and I'll be able to escape, like many of us here dream about (and many have already achieved) :)

Post reply on HN