• We've made some quality of life improvements to the Trading Post. More info here.

Idea/dream/wish: Exposé for classic Mac OS

Sadly no - I moved house recently and am still living in a chaos that precludes getting back to this. There will be updates in the next several months and you will see them right here.
 
I'm still using beta 4 daily, and it's working great.

Would be nice to get the speediness of beta 5, sans the bugs, but take your time.

Good luck with the new house!
 
Hi @PB170 as mentioned earlier, in the new I scale down the number of rectangles in the “trail” based on the number of windows on screen, starting with a maximum of 4 rectangles and dropping to 3 or fewer if more than 4 windows are being zoomed. I also now skip zooming windows that are mostly obscured or too small. The overall effect is cleaner. You will see this version soon. 4 rects looks better than 3 to me if the number of windows is sparse.
Just wondering: Could one maybe cross-fade (maybe in the style of HyperCard's "dissolve" effect, replacing seemingly random pixels from source with those from dest, i.e. not with alpha) from the image with windows to the one without windows? Maybe leaving rectangles for the outline of the frontmost window onscreen (but so clicks pass through)? That way it would look like windows just fade into smoke, then come back.
 
Fun idea for a future version. I’ve implemented things like this before (see the classic “DissBits” asm routine documented in MacTutor circa 1986) including in 8-bit color for a version of BeamWars that will come out …. well maybe next year. The trick is doing it fast enough. I also wouldn’t be able to dissolve directly to the icons or whatever is behind the windows that vanish, so there would be a visual artifact: dissolve from window —> blank desktop then suddenly icons appear. But maybe this is OK.
 
For anyone curious, I tried the last two betas on my Macintosh SE running both 7.0.1 and 7.5 and it just crashes on startup with an unimplemented trap error. Hopefully this can be updated in the future to support 68000 Macs but it's totally understandable if not.
 
Resurrecting this once more, with something to show rather than to ask.

Using AppleBridge and Claude Code, I've written a fresh implementation of what @PB170 specified in post #1 — the
show-desktop half only — and put source, build script and a verified build on
GitHub:

https://github.com/LoetLuemmel/Expose

What it does (System 7.6.1, 68020+): F11, Cmd-Option-D or the top-right hot
corner sweeps every window of every application to the screen edges with the
Finder zoom-rect animation (using the 12-step spacing @PB170 measured in post
#15) and hides them. The same trigger, a click within 5 px of a screen edge, or
switching applications brings them back — the restore rules from post #5.

Under the hood it is a boot INIT that chains the jGNE filter at $29A and walks
the Layer Manager hierarchy the way @cheesestraws laid out in the WindowList
thread (_OSDispatch selector $4F → PEntry+$70 → root layer → subWindows), acting
only in the front process's context. The concrete offsets came from zydeco's
rootless patch for Basilisk II; the measurements and gotchas are in docs/LOG.md.

Not done yet: the window-overview mode, a cdev for the shortcut/corner, and the
"3 px still visible" edge detail — this version hides windows (Crutch's fast
path) rather than moving them. 68000 machines are out, same as the betas here.
Only tested under Basilisk II so far; reports from real hardware — especially a
PowerBook 170 — would be very welcome.

Longer write-up with screenshots:
https://td5.390er.de/expos/

@Crutch — thanks for the trail you left in this thread; the beta-5
hide-all-at-once observation and the WindowList thread saved me most of the
digging.

For further improvements of Exposé, let me know what you consider and I can give AppleBridge and MPW a try.
 

Attachments

Last edited:
@!Beaker, I don't want to speak for @Crutch but I would feel pretty hurt if I worked on a project for months and then someone came in and used the plagiarism machine to recreate it instantly. A lot of people enjoy vintage computers because it lets them get away from AI being used everywhere.
 
@!Beaker, I don't want to speak for @Crutch but I would feel pretty hurt if I worked on a project for months and then someone came in and used the plagiarism machine to recreate it instantly. A lot of people enjoy vintage computers because it lets them get away from AI being used everywhere.
Just to be clear, this wouldn't be an AI issue, it would be a project etiquette issue. Same feelings if someone did the same thing with artisanal, hand baked code just like grandma used to make.

It is a difficult thing with incomplete projects, at what point is it fair to pick something up that someone has put down?

My personal thoughts are -

1) From the perspective of picking something up, be aware that it always hurts the original person's feelings, how much varies by what and who. AI use is a factor in this.
2) From the perspective of someone else working on your project, if you're not actively working on finishing something, as hard as it is, try to be accepting of someone else's enthusiasm to progress something.

Overall though the best thing to do is talk and collaborate. We get more done working together.

Specifically on the subject of AI and not picking up other people's projects, let's keep in mind that AI is something that enables people to participate in the hobby who might not be able to otherwise. Let's not gatekeep programming projects as a whole by saying using AI means you can't do a project you want to. That isn't fair.
 
Just to be clear, this wouldn't be an AI issue, it would be a project etiquette issue. Same feelings if someone did the same thing with artisanal, hand baked code just like grandma used to make.

It is absolutely an AI issue. Reread (or read for the first time) the post you replied to.

It is a difficult thing with incomplete projects, at what point is it fair to pick something up that someone has put down?
If someone had posted some ideas or code they actually came up with themself to further this, I think it would have been well received.
Let's not gatekeep programming projects as a whole by saying using AI means you can't do a project you want to. That isn't fair.
It’s not unfair to say “this thing harms all of us in many ways; let’s keep it out of here so that we are harmed less.” That’s how functional communities work.
 
An A5 and INIT ‚just‘ out of an AI prompt? - I feel, we are not there jet.

It took me one day and many sweat at 48’C pressing three attempts through the V cycle and I am impressed what I did learn today.
Especially with old C dialects like MPW and THINK C , I enjoy the discussion about approaches, preparing test runs and reading Macintosh references over and over.

This is especially the point with Macintosh code, as work is always not profit based and code is very different from our daily code practice.

Now I hope that I didn’t step on someone’s toes making use of advanced technology.
I build the toolset AppleBridge myself over the pasted half year and was really curious, if it could help with a users wish from many years ago.

The code is public as an interpretation on GitHub and tested on BasiliskII end SheepShaver.
I am on vacation now and back home, I‘ll also try on a ‚real’ SE/30.

Without further request, I don‘t add the updated BinHex file here.
 
i do not know how to be any clearer about this: please do not use any information I provide here or anywhere else in the production of slop projects, ever, under any circumstances. Thanks.
 
There seem to be some conflicted feelings on how and when AI should be used, if at all.

I have a feeling that it would behoove everyone to have a set of rules drafted that make clear what kind of AI-ness is and isn't allowed here, so that we can hopefully help encourage responsible use of AI as a learning guide and coding aid while enabling active enforcement against those who disobey the rules by using it to create useless slop, which might as well be equal to spam.

And among those rules will be one that clearly states that it's wrong to use one's text in an AI project without explicit permission. Especially slop.

That said, I will defer to the admins and mods. This is merely a well-intended suggestion :)

c
 
Well done folks. Glad to see that we're encouraging people in the hobby and not letting our personal feelings on how technology should be used get in the way.

Hope we're proud of the community we're fostering, that always puts people first.
 
Well done folks. Glad to see that we're encouraging people in the hobby and not letting our personal feelings on how technology should be used get in the way.

Hope we're proud of the community we're fostering, that always puts people first.

Your oft-repeated passive-aggressive assertion that you are the only person in the room that thinks about the ethics of technology and community, and that everyone who disagrees with you on it does so out of cruelty, stupidity, or blind selfishness is old, arrogant, and worst of all, does not survive any contact with empirical data about the people around you.

People whom you have never met who you pass this judgement upon in such tones will justifiably feel insulted. You have known me long enough to call me whatever names you like, but it would be nicer if they were accurate ones; I have no idea how someone speaks to me for this long without any kind of awareness that I only take strong positions for well-grounded reasons.
 
Your oft-repeated passive-aggressive assertion that you are the only person in the room that thinks about the ethics of technology and community, and that everyone who disagrees with you on it does so out of cruelty, stupidity, or blind selfishness is old, arrogant, and worst of all, does not survive any contact with empirical data about the people around you.

People whom you have never met who you pass this judgement upon in such tones will justifiably feel insulted. You have known me long enough to call me whatever names you like, but it would be nicer if they were accurate ones; I have no idea how someone speaks to me for this long without any kind of awareness that I only take strong positions for well-grounded reasons.
Cheesey

Because people keep being driven away for just using AI for projects, and that isn't right.

You don't have to install their software. None of you anti AI crowd do.

Their AI code is probably vastly better than what I can write, which makes me personally feel like the same people slagging them off also don't want me trying to program.

I keep fighting because it is wrong, so wrong, so horribly repugnant. Fucking evil to be honest and I'm shocked at you, given I know you. Shocked and disappointed and fucking furious to be honest.

I hate arguing about it, it upsets me every time. I makes me not want to be here but I worry that if I don't stand my ground, it will just be person after person driven away.

When I first joined there were big fights about telling people how projects should be managed. It sucked then too.
 
Back
Top