Ok, big breakthrough in #Altivec Intelligence tonight! Gemini helped me build a modern-ish version of libcurl and openssh in a way that can build for iOS 4.3+ and Mac OS X 10.4 Tiger+. So with this, it is possible to make an app that can do modern networking with TLS 1.2 support. Something that these old systems could not dream of doing

The Mac version has a universal binary with 4 slices (PPC, x86, x64, and arm64)... so these are the most universal apps ever 😎

See the screenshots, you can see the app running and checking the library versions on iOS 6, Tiger PowerPC, and Sequioa Apple Silicon

https://github.com/jeffreybergier/AltivecIntelligence/pull/2

Thinking Different, Thinking Slowly: LLMs on a PowerPC Mac

There is something incredibly satisfying about breathing new life into old hardware. Vintage computing is one of my favorite hobbies. The ch...

I landed some improvements and small optimizations to #pixman's AltiVec code. See https://gitlab.freedesktop.org/pixman/pixman/-/merge_requests/136

It was fun working with a new (to me) instruction set and trying to figure out how to puzzle together the pieces into something that improved the `pix_multiply()` function (which is kind of the core primitive of most fast paths).

I couldn't figure out a way to use the `vec_mradds`/`vmhraddshs` instruction. Maybe you can? (see https://gitlab.freedesktop.org/pixman/pixman/-/merge_requests/136#note_2699795)

#altivec #powerpc #simd

vmx: Many improvements (!136) · Merge requests · Pixman / pixman · GitLab

Matt Turner (19): vmx: Remove unnecessary variable vmx: Remove unpack_565_to_8888() and associated constants vmx: Remove unpack_128_2x128_16() vmx: Remove...

GitLab

I fixed an issue in pixman's Altivec code the other day -- https://cgit.freedesktop.org/pixman/commit/?id=207626180d0282bb14a50f2e494174f54ac8a6ce

And in the process, I read through the Altivec docs and discovered that there are vector instructions that pack and unpack between a8r8g8b8 and a1r5g5b5 formats (but nothing fo r5g6b5).

Any clues why? Was a1r5g5b5 really common on Mac OS or something? I don't think I've seen a1r5g5b5 used anywhere.

#powerpc #altivec #simd #macos9 #pixman

vmx: Fix is_opaque, is_zero, is_transparent functions - pixman - Pixman: The pixel-manipulation library for X and cairo. (mirrored from https://gitlab.freedesktop.org/pixman/pixman)

Wayfarer 6.0 browser for #MorphOS has been released at https://wayfarer.icu

The changes include:

• Rebased to #WebKitGTK 2.40.2
• Implemented Bookmarks filtering
• Password manager now stores port numbers too, making it possible to have multiple services requiring login handled on the same domain (as a side effect, all old passwords have been promoted to port 443/https)
• Added a popup if audio initialization has failed
• Added a way to manually add passwords in the Password Settings
• Youtube MSE playback improvements
• Fixed HTTP authentication popup saving credentials for a wrong host in case of redirection
• Fixed a redraw issue when opening print panel while page is still loading
• Fixed to default mimeType to text/html if missing in response from server
• Fixed a couple of minor memory leaks
• Updated libnix and libpng16 both with additional Altivec optimizations
• Updated libxml2, libwebp

My humble contribution in this release was implementing the new #AltiVec acceleration.

Wayfarer - The MorphOS' WebKit Browser

First day of summer #vacation: Working on some #AltiVec optimized standard functions. memchr/memrchr are easy to #vectorize as there is no need to worry about reading past the end of the array (like it is with 0 terminated strings). #MorphOS