Close

"Painting" in MacPaint

A project log for Macintosh SAO

It's the 40th anniversary of the original Macintosh. Why not recapture the magic in an SAO?

aaronAaron 10/05/2024 at 19:230 Comments

While I wait for the final (fingers crossed) boards to arrive, I had to figure out the appropriate resistors for the LED. In addition to the white LED, I did a test of red and it turned out really nice - the picture here does not do it justice. I think I'll make a few with red, and the rest with white. Additionally, I'm contemplating getting some opaque black hot glue to act as a light baffle. I really don't like the way the light bounces out the back.

I'm in the middle of reevaluating the command processor, because I'm testing the limits of its practicality and I want it to be as easy as possible for a user to make the thing they want to make. And do lots of different things with it. 

Anyway, I've added a buffer to MacPaint so you can draw on it and it persists between drawing screens and animating the mouse and whatever on top of it. This is really exciting to me because its critical for one of the big showpieces I wanted for the MacSAO (I don't know if I'll reveal that here before Supercon)

Figuring out the buffer

The next big thing to tackle is the command structure. Right now before any action (like animating the mouse) you have to redraw the background. That makes sense, but the current system means you have to send a new command doing it again. So for instance in the gif below I have to explicitly draw the background before each step. I have a plan to handle this programmatically, but haven't gotten there yet. 

The smile is a little lopsided due to bad coordinates

Discussions