What is AROS ? - a portable, improved open source reimplementation of Amiga OS 3.1. Currently available for: i386, x86_64bit, Amiga m68k, ARM (RaspberryPi) and Efika CHRP / SAM440 PPC hardware, running natively, and/or hosted inside Linux (i386, x86_64bit, PPC), Windows (i386), MacOS (i386), Android (ARM). (Nice, eh?)

What is AROS alive ? - a series of videos exploring various aspects of AROS, and this website with articles about AROS related subjects.

Tuesday, October 10, 2023

ASUS Eee PC graphics hardware, and AROS

When you're trying to find a good, small machine for AROS, you'll soon be looking at ASUS Eee PC mini laptops. They're neat little computers, built into a sturdy cases, and they come in several flavours. Let's see how they compare in terms of AROS graphics support.

AROS running on several ASUS Eee PC computers

These ASUS Eee PC models were available for testing:

4G Surf (or 701)
first Eee PC series, 7 inch display, 800x480, CPU Intel Celeron M, 0.9 GHz

9 inch display, 1024x600, CPU Intel Atom N270, 1.6 GHz

9 inch display, 1024x600, touchscreen, CPU Intel Atom, 1.33 GHz

10 inch display, 1024x600, CPU Intel Atom N270, 1.6 GHz

10 inch display, 1024x600, CPU Intel Atom N450, 1.6 GHz

Seashell series, 10 inch display, 1024x600, CPU Intel Atom N550, 1.5 GHz

Seashell series, 10 inch display, 1024x600, CPU Intel Atom N2600, 1.6 GHz, Intel GMA 3600

Two USB sticks with bootable AROS systems were used for testing. One contains AROS nightly build ABI v0 of May 2019, the other AROS nightly build ABI v1 of October 2023.

"ABI" is an acronym for "application binary interface", meaning the way an application (a program) communicates with the operating system. AROS is under constant development since around 1995, and "ABI v0" refers to the initial design of AROS' "application binary interface". A parallel branch of development is ongoing, using an updated "application binary interface" called ABI v1. At the time of this writing, all current AROS distributions are based on AROS releases using ABI v0. Currently, ABI v1 has to be considered experimental, but at some point in the future will become the standard.

Experimental: ABI v1 support

Currently, ABI v1 is probably more for the AROS system developer than the AROS user or application developer - but let's just start here, because it's the shorter story. 

Booting from the AROS ABI v1 USB stick, and selecting "native graphics" driver in AROS' GRUB menu, none of the graphics hardware was recognized. AROS fell back to minimal "VGA:640x480" screen mode in 16 colors on all tested models. If you want to run AROS ABI v1 on your Eee PC you're better off using generic "VESA" driven screenmodes.

When AROS can't find suitable graphics hardware, it falls back to low-resolution 16 color VGA screenmode

VESA screen modes should work on all PC systems, and give full color depth, but lack hardware (2D/3D) acceleration and have fixed resolutions. Selecting "VESA:1024x768" screen mode in GRUB menu doesn't properly match an Eee PC's native display resolution, which results in "VESA:800x600" being used. This is consistent on most tested Eee PC models. The 4G/701 model uses "VESA:640x480" due to smaller display size. The 901 doesn't switch resolution, but displays 1024x768 with about 20 lines missing at the top, and much more at the bottom. The 1015PN seems to have slightly smarter VESA support, and switches to "VESA:1024x600", which perfectly matches the native resolution, giving correct display aspect. On all other tested Eee PC models VESA screens are stretched horizontally to fill the wide-screen display. The 1000H crashed (froze) when the screen was displayed.

Eee PC 901 accepts "VESA:1024x768" screenmode, but only has 600 vertical physical pixels, ignoring lines at the top and bottom

Real-world: ABI v0 support

Using AROS ABI v0, the current "real-world" version of AROS that is the basis for all current distributions and software available, there is some actual graphics hardware support.

Models 4G/701, 901 (not pictured), 1000H and 1005PE are recognized by AROS' native Intel GMA graphics driver

On four Eee PC models, selecting "native graphics" driver didn't fall back to "VGA:640x480" in 16 colors, but resulted in "GMA_LVDS:640x480" and "GMA_LVDS:1024x600" ("GMA_LVDS:800x480" on 4G/701) 16bit/24bit (full color depth) screenmodes in AROS - the latter of which perfectly matches the display's native resolution. One model crashed (black screen) on boot with "native graphics" driver.

"gearbox" 3D demo running smoothly on the oldest Eee PC tested (model 4G/701)

So a couple of Mesa OpenGL demos were run on the four Eee PCs that got recognized by "native graphics". The 1005PE's graphics chipset doesn't seem to be fully supported by AROS' Intel GMA graphics driver: "gearbox" graphics demo was slow, indicating lack of hardware 3D acceleration. 

Slow "gearbox" demo on 1005PE: only ~10 frames per 5 seconds

With hardware acceleration available, there's huge increase in 3D performance: Eee PC 4G/701 renders ~200 frames of "gearbox" per 5 seconds, and models 901 and 1000H perform best, rendering up to ~400 frames per 5 seconds. 

Speedy "gearbox" demo on 901 and 1000H (pictured): up to ~400 frames per 5 seconds

VESA screenmodes of AROS ABI v0 behave as described for ABI v1. The fastest of the Eee PCs available, the R011CX with an Atom N2600 CPU, renders ~10 frames per 5 seconds of "gearbox" in VESA mode - like the 1005PE, which doesn't have hardware acceleration using native AROS driver.

"gearbox" on the fastest Eee PC available in "driverless" VESA mode: ~10 frames per 5 seconds

So is an ASUS Eee PC any good for AROS graphics?

As we have seen, there are different graphics units built into the various Eee PC models, some of which are supported by AROS. If in doubt, you can use VESA screenmodes on all Eee PC models (except maybe the 1000H), so you'll get pixels and colors in (pretty much) any case, albeit without fast 3D graphics, and probably horizontally stretched. The 1015PN is closer to being really good in this regard with its "VESA:1024x600" mode. The 901 is quite odd in VESA mode, as it doesn't scale or reject 1024x768 resolution, but just crops it to 1024x600.

The typical AROS (ABI v0) user can enjoy fast 3D graphics, full color depth, and correct aspect ratio all at once with the native graphics drivers on the 4G/701, 901, and 1000H ASUS Eee PC models. (And possibly some others that haven't been tested here.) The ABI v1 branch still needs some work on native drivers - but you'll probably prefer ABI v0 anyway.

ASUS Eee PC AROS graphics driver compatibility test results

You can find more AROS hardware information, including ASUS Eee PC, in the WikiBooks:


* * *

DISCLAIMER: This is not an instruction, and no official information. All information is provided according to best knowledge. No guarantees for correctness or completeness are given, and no responsibility will be taken in case of damage.

No comments:

Post a Comment