Arc firmware alternative for PPC, MIPS, DEC Alpha

Possibility to test and port ARC firmware to Haiku, ARC is simpler to use and source code can be adapted to Haiku’s needs.

@mmu_man, @Yn0ga, @ilzu, @zeldakatze, @AetheralMeowstic, @nephele, who may be interested in the port of the code.

In the forum link there are 2 PDFs about ARC firmware specifications:

There are two bases that can be used to port to Haiku, NetBSD code and NT code:

http://ftp7.jp.netbsd.org/pub/NetBSD/arch/arc/

The NT version is more complete and makes use of parts of openbios, coreboot, openfirmware, and has a port to Haiku:

Acknowledgements

  • libc used is baselibc
  • ELF loader and makefiles adapted from The Homebrew Channel
  • Some lowlevel powerpc stuff, and ARC firmware framebuffer console implementation and font, adapted from libogc
  • Some ARC firmware drivers (IDE, USB) adapted from OpenBIOS
  • USB drivers in OpenBIOS were themselves adapted from coreboot
  • ISO9660 FS implementation inside ARC firmware is lib9660 with some modifications.
  • FAT FS implementation inside ARC firmware is Petit FatFs with some modifications

This list of tasks shows use of the openfirmare tree:

This video shows initialization and booting of the ARC firmware on the Wii:

It may also be proposed for next GSoC to port ARC firmware to Haiku.

Suggestions and ideas are welcome.

1 Like

Taking a closer look at that NT4 on PowerMac is on my radar, but mostly for fun. I’ve peeked at the Wack0 repo and while very interesting (not many recent PPC boot code these days ^^ ) and an impressive technical feats it’s wayyyy more complicated than Haiku’s one.

It’s redoing differently a bunch of stuff that are already in the bootloader or are the responsability of others components in the system and missing some other key parts (BFS partition detection comes to mind)

Not saying that it’s an uninteresting exercice, and most certainly a very valuable reference to compare implementations with, but there’s a lot to do to bring Haiku to boot on PowerPC machines and to be truthful, the bootloader is not the part where most of the work lies (and not the most fun either ^^)

Thanks for bringing it up though !
Cheers,

1 Like

This is cool and all, but is there any current hardware based on these architectures? MIPS (the company) now makes RISC-V CPUs, PPC is an IBM thing, and I’ve never heard of DEC Alpha.

1 Like

It is a base to start and experiment with new ideas and solutions, development of the ARC firmware is very active.

Something to use BFS on the ARC firmware would look like this:

https://github.com/search?q=repo%3AWack0%2FmaciNTosh%20ntfs&type=code

NetBSD and OpenBSD have ARC firmware solutions, Firmworks, the company responsible for OpenFirmware, helped years ago in the implementation of the ARC standard and code for NT.

OpenBios project made Openfirmware obsolete, there are few recent commits, the last ones are from 2 years ago.

MIPS architecture lives on in Loongson CPUs:

PPC architecture is open: GNU/Linux Open Hardware PowerPC notebook - An Open Hardware project for everyone, a PowerPC Notebook for you. Join now!

There is still use for DEC Alpha servers, whether enthusiast or enterprise:

There was the movement to 64-bit processors and scalable architectures - in which DEC (aka Digital) was a big pioneer. This was a bit before the Intel Itanium and HP 64-bit RISC processor got a bigger stake in things. DEC Alpha 21264 had a lot of nice features used by others afterwards.

OpenFirmware was popular at that time… but now UEFI and other things have taken ground…

Alpha was also way faster than the competition in the 90s. Running at e.g. 200 MHz with 64 bits when intel was still at 66 MHz 32 bit and 500 MHz when intel was at 200 MHz (and still 32 bit). Other vendors were also behind: e.g. Sun didn’t release 64 bit CPUs until three years after DEC and they were also less than half the speed. I think I read somewhere that this was because DEC chose to continue designing their silicon manually, since automated design tools has not yet caught up, while most other vendors went for automated design and layout tools.

1 Like