Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 04:01 29 May 2026 Privacy Policy
Jump to

Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.

Forum Index : Microcontroller and PC projects : MMBasic ANSI - MMBasic on Mac/Windows/Linux in a terminal

     Page 2 of 2    
Author Message
robert.rozee
Guru

Joined: 31/12/2012
Location: New Zealand
Posts: 2524
Posted: 12:00pm 28 May 2026
Copy link to clipboard 
Print this post

Frank: have you tried launching it using the --console-only switch:

user@HP-stream11-392758:~$
user@HP-stream11-392758:~$ ./mmbasic_ansi --console-only
PicoMite MMBasic ANSI 1.0.6
Copyright 2011-2026 Geoff Graham
Copyright 2016-2026 Peter Mather
MMBasic Anywhere - Copyright 2025-2026 Josh Vanderberg
Bytecode VM, HAL refactor, host/WASM/stdio ports

> quit
user@HP-stream11-392758:~$
user@HP-stream11-392758:~$


i was also unable to get the graphics working sensibly either... unfortunately linux/unix consoles do vary quite a bit in their inbuilt capabilities and rendering speed. while the way Josh is creating the 'pixels' is quite ingenious, it is dependent on the console it is running within (a) being able to cope with dimensions (320, 640, or even 800 columns) way beyond what would normally be encountered in a normal terminal screen, along with (b) needing the operating system's font engine being able to intelligently/efficiently scale characters down to 1pt size (potentially only 1 pixel wide x 2 pixels high) and cache those scaled characters.

i would be surprised if any linux terminal had ever been tested at such extremes. on the other hand, i could well imagine Apple optimizing for such 'non-standard' ways for using fonts!

i did try to get the linux mint terminal on my machines (xfce4-terminal) operating with 'sixel' graphics, which divides each character cell into 6 pixels (2 wide x 3 high) but it seems that sixel is not supported in the versions of xfce4-terminal (pre 1.2) that linux mint uses.


Josh: how would you feel about someone writing a custom launcher that could provide your mmbasic_ansi version of mmbasic with access to a graphics window? i think this could be fairly easily done using Lazarus/FPC with mmbasic_ansi just needing to send simple graphics commands to stdout.


cheers,
rob   :-)
 
jvanderberg
Regular Member

Joined: 06/05/2026
Location: United States
Posts: 45
Posted: 12:19pm 28 May 2026
Copy link to clipboard 
Print this post

  robert.rozee said  Frank: have you tried launching it using the --console-only switch:

user@HP-stream11-392758:~$
user@HP-stream11-392758:~$ ./mmbasic_ansi --console-only
PicoMite MMBasic ANSI 1.0.6
Copyright 2011-2026 Geoff Graham
Copyright 2016-2026 Peter Mather
MMBasic Anywhere - Copyright 2025-2026 Josh Vanderberg
Bytecode VM, HAL refactor, host/WASM/stdio ports

> quit
user@HP-stream11-392758:~$
user@HP-stream11-392758:~$


i was also unable to get the graphics working sensibly either... unfortunately linux/unix consoles do vary quite a bit in their inbuilt capabilities and rendering speed. while the way Josh is creating the 'pixels' is quite ingenious, it is dependent on the console it is running within (a) being able to cope with dimensions (320, 640, or even 800 columns) way beyond what would normally be encountered in a normal terminal screen, along with (b) needing the operating system's font engine being able to intelligently/efficiently scale characters down to 1pt size (potentially only 1 pixel wide x 2 pixels high) and cache those scaled characters.

i would be surprised if any linux terminal had ever been tested at such extremes. on the other hand, i could well imagine Apple optimizing for such 'non-standard' ways for using fonts!

i did try to get the linux mint terminal on my machines (xfce4-terminal) operating with 'sixel' graphics, which divides each character cell into 6 pixels (2 wide x 3 high) but it seems that sixel is not supported in the versions of xfce4-terminal (pre 1.2) that linux mint uses.


Josh: how would you feel about someone writing a custom launcher that could provide your mmbasic_ansi version of mmbasic with access to a graphics window? i think this could be fairly easily done using Lazarus/FPC with mmbasic_ansi just needing to send simple graphics commands to stdout.


cheers,
rob   :-)



I got the graphics version running on a few year old Ubuntu version just running whatever the default terminal was. Nothing special about the Mac. I’d recommend ghostty as a terminal. It runs well on Linux and it has some config options you can use to make the characters have the perfect aspect ratio.

If you want the full graphics experience with sound I’ve already done that with the electron versions, linked in the original post. It will also perform a lot better. This, I admit was a bit of a novelty, and I think the most useful thing is the console only version.

And I’d love it if some somebody wanted to fork or send a PR to do native graphics. But I am not sure that’s a terribly portable route, and MMBasic anywhere is mostly about portability.
Edited 2026-05-28 22:20 by jvanderberg
 
robert.rozee
Guru

Joined: 31/12/2012
Location: New Zealand
Posts: 2524
Posted: 01:01pm 28 May 2026
Copy link to clipboard 
Print this post

  jvanderberg said  
... If you want the full graphics experience with sound I’ve already done that with the electron versions, linked in the original post. It will also perform a lot better.


yep, just after i'd posted i realized that what i was describing was really just a variation on what your electron version already accomplishes!

  jvanderberg said  This, I admit was a bit of a novelty, and I think the most useful thing is the console only version.


i am quite excited about your text-only version - perhaps even one where the --console-only switch was the default. while i can't speak for others, my interest in mmbasic has always been (1) use on embedded controllers (like the MX170 version) and (2) as a scripting language in the terminal/console. the games/graphics side of things is of little interest to me, but does seem to be the direction 'official' development has headed in in recent years - along with a constant stream of bolted-on 'enhancements'.

  jvanderberg said  And I’d love it if some somebody wanted to fork or send a PR to do native graphics. But I am not sure that’s a terribly portable route, and MMBasic anywhere is mostly about portability.


unfortunately it (native graphics) is exceptionally un-portable. Lazarus/FPC tries to do it, but is suffering at the hands of wayland vs X11, and GTK2 vs GTK3 vs Qt. not to mention the ever-evolving Apple ecosystem.

prior to your postings i had not heard of Electron before. i may start a thread about Electron on the Lazarus/FPC forums to see if there is any interest in them using it there.


cheers,
rob   :-)
Edited 2026-05-28 23:05 by robert.rozee
 
Frank N. Furter
Guru

Joined: 28/05/2012
Location: Germany
Posts: 1100
Posted: 03:40pm 28 May 2026
Copy link to clipboard 
Print this post

@rob:

Yes, it works for me with the --console-only switch...

Frank
 
     Page 2 of 2    
Print this page


To reply to this topic, you need to log in.

The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2026