These interfaces can be cute to play with, but there's a reason that fbdev is deprecated on Linux - it's not a good interface outside toy examples. wscons may be more powerful, but I don't think it can be used to fully enable modern accelerated display devices, although do correct me if I'm wrong.
Despite some confusion in terminology, modern interfaces also operate on frame buffers, but with an API for switching them out atomically. Likewise, your display server (at least modern ones) just take your client window as a completed frame buffer, and mainly serve to let multiple applications all show their frame buffers without having to worry about what other applications are doing. Frame buffers all the way down, just with support for DMA, atomicity, fancy formats and color spaces, etc.
You can use the appropriate modern APIs to make a single, exclusive graphical application with all the benefits of modern display hardware easily enough. That is, after all, what your display server is. You just don't gain much - just a little bit of saved sideband IPC.
X11 makes it seem like a display server is a complicated thing that has to support drawing and what not, but with alternatives like Wayland, a full screen client buffer is handed off zero-copy from the client application tot he hardware without being looked at.
show comments
pjmlp
On a parallel note, this brought memories of SVGALib.
> Same font, same colors, same… everything? Other than for the actual text they display, they look identical, don’t they?
Funny to see that written under two screenshots with clearly different fonts, and even different colors (though not so clearly; but still different enough to make me check).
show comments
zfg
Avalonia (https://avaloniaui.net/) supports the Direct Rendering Manager on Linux for graphics without X11 or Wayland:
I remember Links, the text-based browser that runs in your terminal, had a framebuffer mode that you could use to get rudimentary graphical web browsing on a system with no X11 installed.
show comments
makz
Awesome! I was thinking about playing with this on some BSD like two months ago.
int_19h
Once upon a time there was a tiny library called TinyPTC that let you write code like this:
These interfaces can be cute to play with, but there's a reason that fbdev is deprecated on Linux - it's not a good interface outside toy examples. wscons may be more powerful, but I don't think it can be used to fully enable modern accelerated display devices, although do correct me if I'm wrong.
Despite some confusion in terminology, modern interfaces also operate on frame buffers, but with an API for switching them out atomically. Likewise, your display server (at least modern ones) just take your client window as a completed frame buffer, and mainly serve to let multiple applications all show their frame buffers without having to worry about what other applications are doing. Frame buffers all the way down, just with support for DMA, atomicity, fancy formats and color spaces, etc.
You can use the appropriate modern APIs to make a single, exclusive graphical application with all the benefits of modern display hardware easily enough. That is, after all, what your display server is. You just don't gain much - just a little bit of saved sideband IPC.
X11 makes it seem like a display server is a complicated thing that has to support drawing and what not, but with alternatives like Wayland, a full screen client buffer is handed off zero-copy from the client application tot he hardware without being looked at.
On a parallel note, this brought memories of SVGALib.
https://en.m.wikipedia.org/wiki/SVGALib
> Same font, same colors, same… everything? Other than for the actual text they display, they look identical, don’t they?
Funny to see that written under two screenshots with clearly different fonts, and even different colors (though not so clearly; but still different enough to make me check).
Avalonia (https://avaloniaui.net/) supports the Direct Rendering Manager on Linux for graphics without X11 or Wayland:
https://avaloniaui.net/blog/unleashing-net-on-embedded-linux
https://docs.avaloniaui.net/docs/guides/platforms/rpi/runnin...
I remember Links, the text-based browser that runs in your terminal, had a framebuffer mode that you could use to get rudimentary graphical web browsing on a system with no X11 installed.
Awesome! I was thinking about playing with this on some BSD like two months ago.
Once upon a time there was a tiny library called TinyPTC that let you write code like this:
I wish we had something equally simple these days.Very nice, I am very interested in raw framebuffer graphics and applications.
i think that's what sdl provides? except sdl can do more
[dead]