Oh no! Where's the JavaScript?
Your Web browser does not have JavaScript enabled or does not support JavaScript. Please enable JavaScript on your Web browser to properly view this Web site, or upgrade to a Web browser that does support JavaScript.

AROS <3 xterm

Last updated on 8 hours ago
C
coffeecatJunior Member
Posted 2 days ago
I’ve started working on a modern native terminal for AROS mainline, targeting x86_64 first, then AArch64.

The first preview runs in an Intuition window using graphics.library. It already supports basic ANSI/CSI sequences, colors, a cursor, wrapping, bounded scrollback, and window resizing. The terminal model is tested both on the host and inside AROS.

It currently displays replayed output; it isn’t connected to a Shell yet. Next steps include improving compatibility, adding UTF-8 and clipboard support, and then integrating local Shell sessions. Longer term, I’d like to explore a proper PTY layer and the POSIX support needed for more TUI applications.

Feedback is welcome, especially pointers to existing AROS terminal/PTY work or reusable components.

i.imgur.com/0AEPDeC.png
retrofaza, sonountaleban, miker1264, x-vision
C
coffeecatJunior Member
Posted 2 days ago
i.imgur.com/pEbpCb0.png
Amiwell79, retrofaza, amigamia, tom1000
M
miker1264Software Dev
Posted 2 days ago
Great work!

As far as feedback will it have Copy/Paste capabilities? You mentioned Clipboard support.

It's one thing I like about Linux but it's lacking in AROS. I have to use Bash Shell to send output to text.
C
coffeecatJunior Member
Posted 2 days ago

miker1264 wrote:

@miker1264 - Great work!

As far as feedback will it have Copy/Paste capabilities? You mentioned Clipboard support.

It's one thing I like about Linux but it's lacking in AROS. I have to use Bash Shell to send output to text.


Yes. Mouse selection and copy/paste through the system clipboard are planned, including copying output from scrollback without redirecting it to a file. AROS already has a clipboard API; the work here is integrating it properly into the terminal.
Amiwell79, ami-elvis, miker1264
C
coffeecatJunior Member
Posted 2 days ago
i.imgur.com/l0UWKvq.png


Done. But still many bumps ahead
miker1264, deadwood, x-vision
C
coffeecatJunior Member
Posted 2 days ago
i.imgur.com/Cs0h0iA.png


End of session for today. Next steps:
1. Usable console with native shell
2. SSH
3. Ratatui and something like https://holonaut6...waggerfall
retrofaza, ami-elvis
D
deadwoodAROS Dev
Posted 1 day ago
Looking interesting!

PS. Unrelated question: Is the VMWARE video driver not working in QEMU under MacOS? (Your screen resolution looks quite low)
C
coffeecatJunior Member
Posted 1 day ago

deadwood wrote:

@deadwood - Looking interesting!

PS. Unrelated question: Is the VMWARE video driver not working in QEMU under MacOS? (Your screen resolution looks quite low)


I run QEMU with -vga std when I'm driving the VM from the host, because under vmware-svga the mouse pointer is a hardware cursor that QEMU's screendump doesn't capture. My tooling locates the pointer by matching it in a screenshot. Handy when I am at work and can do hands-free tests. If I missed anything let me know, still learning.
C
coffeecatJunior Member
Posted 21 hours ago
i.imgur.com/nJturC8.png

i.imgur.com/UVq4X6K.png


Already working on AROS mainline x86_64:

- Native Intuition frontend with resizing, scrollback and text selection.
- Real AROS Shell integration, including commands, aliases, startup profiles and independent terminal
windows.
- Command-line editing, history, TAB completion and Shift selection.
- System clipboard copy/paste, including multiline paste with confirmation.
- UTF-8, wide CJK characters, combining characters and tested emoji—including colour and selected
compound sequences.
- Basic ANSI/VT cursor movement, line clearing, colours and alternate-screen support.
- Native C TUI applications with keyboard interaction and return to Shell.
- Applications can redraw status rows in place using existing terminal sequences.

Still missing or incomplete:

- Full KingCON/VincED compatibility.
- POSIX PTY, termios and Unix-style job control.
- Ratatui and a verified interactive SSH session.
- Full VT/xterm compatibility, 256 colours, truecolour and extended styles.
- Application-facing resize notifications and scrolling regions.
- Tabs, application-controlled titles, scrollback search and session logging.
- Smoother scrolling/redrawing and broader Unicode layout support.
retrofaza, aha, Amiwell79, miker1264
C
coffeecatJunior Member
Posted 15 hours ago
Rust TUI app built with Ratatui and dragging of separators (VT1002 and SGR1006) + proper lines in box drawing.

i.imgur.com/LPit3rX.png

i.imgur.com/BDwJEA6.png

i.imgur.com/Ikm3xqI.png

i.imgur.com/T5MMoJe.png


Almost there.
S
sonountalebanMember
Posted 15 hours ago
I can't see the images (Content not viewable in your region), could it be an issue of the forum?
C
coffeecatJunior Member
Posted 15 hours ago

sonountaleban wrote:

@sonountaleban - I can't see the images (Content not viewable in your region), could it be an issue of the forum?


Hmm... now that you mention it, likely my imgur. Try naow?
M
miker1264Software Dev
Posted 15 hours ago
Very nice work with XTerm.

AROS lacks a good syntax highlight text editor. How difficult would it be to port something like Scintilla Text Editor or Sublime Text Editor?

Could we use GCC in XTerm on AROS? Sorry if that's an odd question.
C
coffeecatJunior Member
Posted 14 hours ago

miker1264 wrote:

@miker1264 - Very nice work with XTerm.

AROS lacks a good syntax highlight text editor. How difficult would it be to port something like Scintilla Text Editor or Sublime Text Editor?

Could we use GCC in XTerm on AROS? Sorry if that's an odd question.


Thanks! Not an odd question at all. Think of XTerm (name will change) as a native terminal that could potentially replace KingCON or VincED. Running development tools is very much one of its intended uses. Something like Windows Terminal, iTerm, Ghostty, Alacritty, or whatever is your poison on other OSes.

An AROS-native GCC should work through XTerm’s Shell integration, provided the compiler and SDK are installed and configured. XTerm provides the terminal; GCC handles compilation. I haven’t verified a complete native compile-and-run workflow yet, though.

A native GUI editor would be a separate project, but XTerm could also open the door to terminal-based editors with syntax highlighting, both locally and over SSH. I definitely want to look into Micro, Helix (my favorite), and Neovim. Getting them running locally will still require compatibility work, but that's the direction I want to take.

Scintilla seems like a plausible porting candidate, although it is an editing component, so someone would still need to build an editor around it. Sublime Text is proprietary, which makes a community port a different proposition.

There is also Zed: jonx has managed to compile it on Macaros. I’ve only launched it once, so I can’t yet comment on its dependencies or day-to-day usability. I’m a fan of Zed, though, and would definitely be interested in helping that effort along.

PS. The terminal already integrates with the AROS shell, so anything you can do in Shell/Execute, you can do with "XTerm". On my list is to explore *sh. ZSH is unlikely, but FiSH is quite likely.

Also, you will soon see my broader idea*, since I already have two apps that wait for the terminal: a package manager and an OpenCode/Charm-inspired coding agent.

*) And I hope it all works; otherwise, I will have to leave the forum in shame Wink
Edited by coffeecat on 08-09-2026 18:22, 14 hours ago
C
coffeecatJunior Member
Posted 14 hours ago
Last for tonight: Interactive SSH with EOF, POSIX signal propagation, and size negotiation -> works.
sonountaleban, miker1264
You do not have access to view attachments
C
coffeecatJunior Member
Posted 13 hours ago
Okay, I lied. Chafa is also supported, and Kitty is on the line
https://hpjansson...
You do not have access to view attachments
D
deadwoodAROS Dev
Posted 8 hours ago

coffeecat wrote:

@coffeecat

I run QEMU with -vga std when I'm driving the VM from the host, because under vmware-svga the mouse pointer is a hardware cursor that QEMU's screendump doesn't capture. My tooling locates the pointer by matching it in a screenshot. Handy when I am at work and can do hands-free tests. If I missed anything let me know, still learning.


Ok, now I understand. I was just making sure VMWARE driver works on your setup too. BTW, you can control the cursor by software by sending input events (same with keyboard). I use that in some of my automated tests.
You can view all discussion threads in this forum.
You cannot start a new discussion thread in this forum.
You cannot reply in this discussion thread.
You cannot start on a poll in this forum.
You cannot upload attachments in this forum.
You cannot download attachments in this forum.
Users who participated in discussion: deadwood, miker1264, sonountaleban, coffeecat