Passing of Bill Atkinson

JDW

Administrator
Staff member
Founder
Sep 2, 2021
1,947
1,651
113
54
Japan
youtube.com
Folks, I never expected to be mentioning the passing of the beloved Macintosh creator, Bill Atkinson, at this early stage, but his family posted his passing today on FaceBook here. He was still a quite young 74-years-old.

It goes without saying that Bill was the heart and soul of the vintage Mac community insofar as the community and the Mac itself wouldn't have existed without Bill. Nevertheless, those of you not so familiar with Bill Atkinson may find the content at the URLs below of interest.




My heart goes out to his family at this difficult time.
 

fxgogo

New Tinkerer
Mar 8, 2022
22
15
3
Just learnt about this. That is very sad. Thoughts go out to his family and friends.
 
  • Like
Reactions: JDW

JDW

Administrator
Staff member
Founder
Sep 2, 2021
1,947
1,651
113
54
Japan
youtube.com
Don't forget Magic Cap.
More specifically...


For those of you who haven't seen the General Magic movie, here's the trailer:


For Atkinson and Hertzfeld, the end result of their product work at General Magic was somewhat of a failure. The arrival of the internet spelled its demise. But many of the brilliant minds on that dream team went on to create bigger and better things. For example, Tony Fadell co-created the iPod and iPhone. Andy Rubin co-founded Android Inc. Pierre Omidyar founded EBAY.
 
  • Like
Reactions: YMK

David Cook

Tinkerer
Jul 20, 2023
64
65
18
Bill Atkinson was one of my heroes.

As a young software engineer, I spent many commutes and sleepless nights trying to figure out how regions worked. The best I could come up with was a tree of rectangles with an in/out/check-child-nodes flag to determine if a pixel should be drawn or not.

A while ago, Apple released the source code for regions and I immediately downloaded and analyzed it. It was so beautiful, so fast, and so simple it was like seeing the hand of God. Many great artists say they don't create anything, they just reveal it. I was so emotionally moved that I literally broke down and cried.

That evening, at dinner, I spoke with my wife about how I felt. I didn't think much more about it. But, secretly, my wife wrote to Bill and told him. Bill thanked her and responded with a gift to me: a signed copy of his book "Within the Stone". It is displayed in a cabinet visible from where I code. It remains one of the most precious gifts in my life.

Signed copy.jpg


Now, if I can just have lunch with Andy Hertzfeld, my life will be complete.

- David
 

Nycturne

Tinkerer
Dec 18, 2024
97
61
18
I was a bit young when Bill was having his impact at Apple, but Hypercard was still a big thing for young me. It was where I first started trying to build something with a computer rather than just playing with the computer. And much of his work on QuickDraw which I delved into during high school in the 90s still informs some of my thinking about computer graphics today. I am sad to hear that he passed, but his legacy will certainly be remembered.

As a young software engineer, I spent many commutes and sleepless nights trying to figure out how regions worked. The best I could come up with was a tree of rectangles with an in/out/check-child-nodes flag to determine if a pixel should be drawn or not.

A while ago, Apple released the source code for regions and I immediately downloaded and analyzed it. It was so beautiful, so fast, and so simple it was like seeing the hand of God. Many great artists say they don't create anything, they just reveal it. I was so emotionally moved that I literally broke down and cried.

This reminded me to go back and look at how regions were implemented. When I was a young teen, I was building small things here and there, and I was also curious about how regions worked. But at some point I basically moved onto other things before I ever learned the truth. Looking at how the data is packed now, it is a very clever trade-off, and perfect for the sort of things you'd want a graphics region for in the 80s. I haven't read the code that uses regions, but I can already see how this is a very natural data structure for clipping regions. Very, very impressive.
 
  • Like
Reactions: JDW

JDW

Administrator
Staff member
Founder
Sep 2, 2021
1,947
1,651
113
54
Japan
youtube.com
@David Cook
That was a very touching tribute to Bill Atkinson, and I wish to thank you very much for sharing that.

Not understanding what you were talking about regarding "regions," I instructed ChatGPT to analyze your post, then find the source code you were referring to, and then explain a little about regions and applications within the context of Bill's MacPaint app. It gave me the following, which may be helpful to the coders who find this thread and have interest in it:

  • Source code (68000 Assembly)

  • DEFINITION:
    A region in QuickDraw is essentially an arbitrary set of pixels (not just a single rectangle), stored in a compact form that’s fast to manipulate. Internally, it’s built as a series of scan-lines with “inversion” points: each horizontal line records the x-coordinates where pixels flip between “inside” and “outside” the region, and identical lines are run-length encoded. You can combine regions with union, intersection, difference or XOR operations, and you can use them to clip any subsequent drawing so nothing is drawn outside that shape. Regions let QuickDraw handle arbitrary, efficiently stored shapes for clipping and shape-based operations without resorting to full bitmaps.

  • GENERAL USES:
    — Clipping: restrict drawing to non-rectangular window shapes or complex masks.
    — Hit-testing: determine whether a point lies within an irregularly shaped control or graphic.
    — Invalid-rectangle management: track which parts of a window need redrawing when it’s exposed or moved.
    — Boolean shape operations: build complex graphics by combining simpler shapes.

  • MACPAINT USES:
    Freehand (“Lasso”) selection
    Drawing an arbitrary loop around part of your bitmapped drawing in MacPaint does not mark every pixel one by one. Instead, MacPaint builds a region from your lasso selection loop, akin to a neatly compressed mask of “inside vs. outside”. Any edit like moving, copying, filling, etc. is performed only on the pixel content inside the loop.
    —Marching Ants
    QuickDraw can frame a region with a patterned pen, and then invert (or re-draw) it every few ticks—giving the illusion of ants marching around the selection.
 

JDW

Administrator
Staff member
Founder
Sep 2, 2021
1,947
1,651
113
54
Japan
youtube.com
Last night, I was reading a book named "Programmers at Work: Interviews With 19 Programmers Who Shaped the Computer Industry" by Susan Lammers (1986). It contains an interview with Andy Hertzfeld. What Andy wrote about Bill Atkinson and the LISA was quite interesting, so I will share that part below:

By 1983, Apple knew that the Macintosh was going to happen.
Another unusual thing was that Steve wanted to give credit to the people who actually did the work. The idea came from something that happened when Lisa came out: Lisa had a lot of publicity, and Bill Atkinson had done 110 percent of the important work. He literally created Lisa. But, in articles that came out about the computer, he didn't get credit for it. That was because the Lisa project was as incredibly bureaucratic as the Macintosh project was free and loose. Lisa had a complicated organization, with six levels of management and a hundred programmers. The magazines talked to the manager, and the managers considered themselves the architects of Lisa, even though it was mostly Bill's creation.
Bill felt awful. Something like that had happened to him when he was in college. He did some landmark work, a computer-graphics movie about the brain, which made the cover of Scientific American. The professor he did it for took all the credit, while Bill had done all the work. He was so distraught that he was ready to quit. Apple ended up naming him an Apple fellow to make him happy.
So, Steve Jobs promised us credit for Macintosh.

Most of us know Bill Atkinson's work on the Macintosh and QuickDraw and HyperCard, and while we know Bill worked on the LISA as well, it's the first time I read about the LISA basically being Bill's baby. But the LISA was inseparably tied to its GUI, and Bill Atkinson played a major role in that, so Andy's statement makes a lot of sense when you ponder it.

Bill Atkinson was truly a brilliant fellow.



P.S. If you open the book on Internet Archive, then Borrow it, then scroll up one page before the article, you'll see a program that Andy wrote called "IconBounce" which bounces icons around the display (on the Mac). I couldn't find that app anywhere online, not even Macintosh Garden, which indicates it was possibly never released into the wild. But interestingly enough, the book includes the entire Assembly code in its Appendix.

I made screenshots of that ASM code, did clean-up, then converted it to a PDF. I spent a lot of time trying to OCR it properly, but it all was in vain. Shocking how everybody talks about AI taking over the world when no tool that I can will OCR bitmapped source code well. Anyway, to assemble the code, it requires an INCLUDE file required named "MacTraps.D". I'm guessing "MacTraps.D" must be on version 1.0 of the Macintosh 68000 Development System (MDS from 1985) because MDSv2 on the Garden has a file named "Traps.D" on Disk 2...

1749631583507.png

But the content may differ from "MacTraps.D" in MDSv1.0, which could cause Andy's program to fail to Assemble or fail to execute properly after it's Assembled.

Amusingly, EBAY has MDS v1 going for $1,000. Sheesh.

FYI: Macintosh Assembly Language: An Introduction (by Jan Harrington) mentions "MacTraps.D", indicating its content is based on MDS v1.

I've attached the PDF I made of Andy's source code.
Maybe @David Cook or @Mu0n might find it interesting.
 

Attachments

  • IconBounce_ASM_SourceCode.pdf
    3.6 MB · Views: 12
Last edited:
  • Like
Reactions: mac27

slomacuser

Tinkerer
Nov 1, 2021
125
92
28
I have it. Its compressed with DD (DiskDoubler). I couldnt upload it as without prefix so I added .sit If it dosent work will make a real sit of it with some other demos I have tomorrow…

IMG_0683.png
 

Attachments

  • IconBounce.sit
    7.4 KB · Views: 9

JDW

Administrator
Staff member
Founder
Sep 2, 2021
1,947
1,651
113
54
Japan
youtube.com
I have it. Its compressed with DD (DiskDoubler). I couldn't upload it as without prefix so I added .sit
Wonderful to hear you have it! Thanks for making an attempt to upload it.

Unfortunately, I spent about a half hour in vain on your file. Stuffit Expander 5.5 under System 7.5.5 won't expand it. And Disk Doubler Pro 4.1 throws an error when using the "DD Expand" app on it...

1749775348072.png


My modern version of Stuffit won't decompress it either, and BetterZip! shows it to be a SIT within a SIT...

1749775483879.png


By renaming the file and uploading it, I suspect the read File TYPE & CREATOR were lost, and my modern Mac read the filename extension and used the Type & Creator for a SIT file. It also seems there are two different AutoDoubler versions and 3 different DD versions, so trying to pick the right TYPE & CREATOR is a bit messy.

If you are able to upload a fixed SIT or HEX or BIN file (either here or on Macintosh Garden), it would be neat to see what the app does. Thanks for your kind help in locating the app!
 

David Cook

Tinkerer
Jul 20, 2023
64
65
18
Extracted and converted to BinHex (aka Tiny Transfer) format
 

Attachments

  • IconBounce.hqx
    17 KB · Views: 10
  • Love
Reactions: JDW

JDW

Administrator
Staff member
Founder
Sep 2, 2021
1,947
1,651
113
54
Japan
youtube.com
I honestly don't know what the world would do without its geniuses.
Bless you, David Cook!
 

David Cook

Tinkerer
Jul 20, 2023
64
65
18
I honestly don't know what the world would do without its geniuses.
Bless you, David Cook!

You are very kind.

This only runs on "classic" B&W Macs because Andy is not calling Bill's Quickdraw routines (FillRect and CopyBits) -- which is ironic given the thread it is posted to. : )

It also won't likely run with MultiFinder active, which is also somewhat ironic given Andy's later work on Switcher.
 
  • Like
Reactions: JDW

slomacuser

Tinkerer
Nov 1, 2021
125
92
28
Sorry for the mess... I was just going to sleep and the best I could do is to post ti from my phone. If you would wait 12 h I could uploaded correct prepared file ... anyway I am sure this app any many more interesting demos were published on BMUG discs.
 
  • Love
Reactions: JDW