Tuesday, April 20, 2021

ArcticFox to browse on an iBook

I did quite some work to have "--enable-altivec" work in ArcticFox. The FireFox AltiVec test did not work because it relies on GCC rejecting it if not supported by the CPU.

Most of the work was getting the 32bit AltiVec code actually work during a 64bit compile on a PPC970. But what about a non-AltiVec build? WIth some #ifdef's imported from TenFourFox... I was able to get it and produce, while compiling on a G4, a usable G3 optimized binary for Linux.

Result? A quite current browser for a 21 year old vintage computer! Fun! Not very fast and the beautiful tangerine clamshell has only 160MB of RAM, but still, one can browse Wikpedia!

Thursday, December 31, 2020

ArcticFox now on Raspberry 3 - ARM support is back!

Just completed these days... ArcticFox now runs fine on Raspberry PI 3, it also compiled natively on it on Raspbian!

Coming from PaleMoon which had dropped ARM support, it took quite some time, but it is kicking again and the classic browser is a good companion on the Raspberry!

It runs surprisingly good and you can even watch youtube videos. Obligatory screenshot as proof:

In fact, this same post was written on my RPI3. While I was able to fix neon support in graphics, I have issues doing a cortex-a53 optimized build. I also have issues compiling on the newer RPI3 which as a newer Raspbian/RpiOS, with similar errors. However, seeing ARM support back is a good feeling .

DataBasin 1.1 S released

DataBasin 1.1S and DataBasinKit have finally been released, after a long time-span.

This release is dedicated to my late friend and colleague Steven Rovelli (hence the "S" in the release name) who parted from us too young. He was an enthusiastic user of DataBasin and used and supported it inside our company, for countless AMS tasks. COVID-19 carried him away and he will be sorely missed.

This release is marks also the move from the GAP svn repository, to standalone projects on GitHub.

DataBasin sports some interesting news:

  • Improved interface with ComboBoxes to select update/insert objects and preferences to filter out more system objects
  • remember last successful login username
  • getUpdated / getDeleted
  • Undelete
  • Improved support for sub-objects and lists and unpacking (from DataBasinKit), this allows for example to use sub-queries, provided the related object is one (LIMIT 1)
  • support for enabling Assignment Rules in create/update

The core DataBasinKit has also many improvements,, some of them are not completely appreciated from the GUI interface, but useful for other programs wishing to use the API:

  • enhanced and rewritten handling of sub-objects and object-lists in query results: this allows to have SObject lists interpreted as such when using subqueries.
  • getUpdated and getDeleted
  • undelete
  • possiblity trigger Assignment Rules in create & update

Monday, December 21, 2020

LCD Display on RaspberryPI with Objective-C

Since many years there are ways to display Data on the Raspberry PI by using small LCD Displays connected to the GPIO pins. Most of these small projects however use Python, an interpreted language which I dislike. There are C projects using the wiringpi library and which are inspired by Arduino versions, I have looked at this nice work by binerry which concentrates on the PCD8544 (aka known as the Nokia 3310 display!).

I studied it but wanted to use the Objective-C language which I like much more and which will enable me in the near future to leverage existing Kits. I had some doubts about speed and interoperability, so I started by "wrapping" the C functions with an Objective-C class. The proof of concept worked fine, so I went on to write more native library.

SPIDisplayKit is thus born - requiring GNUstep Base only and providing an AppKit inspired interface to the Display - e.g. Coordinates to the methods are passed with a struct, similar to NSSize or NSRect, but simpler, since they are direct integer without any transformation, scaling or other support and thus eliminating the need of floating point:

Look in this video the result running on an original Raspberry PI 1:

Objective-C + GNUstep + Raspberry PI + PCD8544, the code of this trivial Pong example is full Objective-C and very easy too!

This opens the road to a lot of nice examples, since Data Management and Connection Management supplied by GNUstep Foundation is so convenient, but the speed of Objective-C (here with the GNU GCC runtime) are more than enough!

Monday, October 26, 2020

Arctic Fox 27.11.0 release

 This 2020 with COVID, quarantines and lockdown was and is a strange year, but it allowed me to take care of Arctic Fox quite a bit. A lot of work is going on in my Arctic Fox fork, which Matt dutifully imports.

Thousands of commits flew in into this new release, tackling JavaScript upgrades, build fixes, further metro removal, JIT optimizations. SO much was imported from Firefox that this is really exciting!

Arctic Fox continues to run very well on MacOS-X 10.7 for example, on my MacBook Pro:

But also Linux is fully supported, of course. 

Linux/PowerPC works as before, but still no JIT of course. Roy continues his fork with WindowsXP support which differs only by a minimal set of patches.

SPARC64 support was pursued, now NetBSD/SPARC64 compiles fully, but.... the browser crashes on startup. Help seeked!

The same goes for ARM, ARM64 and MIPS: we would love to get these platforms working again: they were probably lost in PaleMoon.

Arctic Fox thus continues the pursue of PaleMoon and Firefox heritage but with enhanced compatibility on more platforms, no Rust and legacy OS/Compiler support. If you like this, please help!

Sunday, December 15, 2019

ArcticFox 27.9.19 release

Arctic Fox 27.9.19 has been released!

Plenty of enhancements, still supports your trusty Mac from 10.6 up and Linux PowerPC!

Arctic Fox on Devuan amd64

Code has been fixed to support newer compilers. On Linux, currently, the highest supported compiler remains gcc 6.5, more recent versions do compile now with this release, but fail to link afterwards with errors on very standard symbols. Help appreciated! On NetBSD gcc 7 now works fine instead.

Tuesday, February 19, 2019

ArcticFox has working DevTools again

The past release of 27.9.15 ArcticFox has the Developer Tools working again, they were broken previously because of excessive work on Private browsing.

You can see them here in full action:

ArcticFox continues the work as a fork of PaleMoon trying to catch up with past releases of FireFox.
It has been succesfully backported up to MacOS 10.6 SnowLeopard, is working reliably on Linux x86, amd64 and PowerPC 32bit and 64bit.

If you like the browser, we need your help!

Thursday, February 07, 2019

GIMP 2.10.6 working on MacOS Leopard!

My white MacBook is a perfectly fine computer, has an excellent screen and keyboard (superior to later models I have) so even if it is running a legacy OS version, I'd love to continue using it and, perhaps, other of you are in the same situation.

Besides ArcticFox (which I got running on 10.6, but not on 10.5 yet) and various developer tools, the most essential tool I like to have is GIMP, also given the excellent LCD this Laptop has.

Some work from macports to get up-to-date tools and dependent libraries, I patched its package.

Little work was needed in GIMP itself, I shared all the patches upstream and I hope they will be accepted. The remaining issues are in GEGL, but different solutions are available: essentially realpath doesn't like a null argument.

Enjoy this screenshot as a proof.

Next question: will it work on PowerPC too? I hope so! Getting GIMP to work on 10.5 opens this possibility.

P.S.: this post was written directly on the MacBook i386 using TenFourFox running natively on Intel!