Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 19:22 17 Nov 2025 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 : GFXTerm and ArmMite f407 AMBasic 5.07.00b2

Author Message
panky

Guru

Joined: 02/10/2012
Location: Australia
Posts: 1116
Posted: 04:36am 25 Feb 2021
Copy link to clipboard 
Print this post

Rob,

In Peter's latest cut of ArmMiteBasic (5.07.00b2), the list commands and list functions commands send lines longer than 80 (appears to be at least 88, possibly 96).

Is there any way to have GFXTerm handle longer lines (The long lines wrap OK but it makes the displayed data more difficult to read).

Doug.
... almost all of the Maximites, the MicromMites, the MM Extremes, the ArmMites, the PicoMite and loving it!
 
robert.rozee
Guru

Joined: 31/12/2012
Location: New Zealand
Posts: 2466
Posted: 10:46am 25 Feb 2021
Copy link to clipboard 
Print this post

hi,
   handling lines longer than 80 characters presents interesting problems to any terminal emulator, i have been considering this for a while with regards to the CMM2 use of 100 (or 101?) columns.

1. if you allow the user to resize the 80x24 terminal window, then anything that assumes a fixed 80 columns (or 24 lines) may thereafter break. for instance, an editor that assumes automatic line wrapping at 80 columns, or that clears the screen by writing 24 line feeds. the reason for the breakage may not be obvious to the average user, nor may it be obvious how to get back to an exactly 80x24 terminal window.

2. worse still, if you honour escape sequences from the remote (mmbasic) computer to resize the 80x24 terminal window, then you run the risk of the window being resized beyond the bounds of your LCD monitor. under linux this is handled fairly gracefully (albeit in a way most users are unaware of), but with windows things can quickly go to custard - for instance, the user being unable to get to the titlebar close button, automatic scrollbars being generated by windows where there is no screen space for them, etc. and again, the user may not be aware of how to get back to exactly 80x24.

as, essentially, a VT102 emulator, GFXterm 'sandboxes' the remote (mmbasic) computer within the 80x24 bound terminal area. in my view, this represent good programming practice.


i guess what i could do is create versions for further different sizes of terminal screen. right now there are already three (80 column) versions available, with: 24, 36, and 43 lines. this was done in response to several user requests, but to be honest i doubt if any more than a handful of people use anything other than the basic 80x24 version.

given all the available different font sizes and screen resolutions supported by the CMM2, how many different terminal sizes are required? i know of 101x50 (which the CMM2 originally had), but am sure there are others.


cheers,
rob   :-)
Edited 2021-02-25 20:48 by robert.rozee
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10591
Posted: 10:54am 25 Feb 2021
Copy link to clipboard 
Print this post

  Quote  how many different terminal sizes are required?


Basically dozens. The only proper solution is to allow flexible re-sizing and accepting the screen resize escape code same as teraterm or puppy
 
robert.rozee
Guru

Joined: 31/12/2012
Location: New Zealand
Posts: 2466
Posted: 03:20pm 25 Feb 2021
Copy link to clipboard 
Print this post

  matherp said  The only proper solution is to allow flexible re-sizing and accepting the screen resize escape code same as teraterm or puppy

this essentially entails allowing the remote (mmbasic) computer to remotely control aspects of your main computer's desktop. a bit like popup windows generated by a web browser, which are heavily curtailed (or completely blocked) by most modern browsers.

when developing the win32 version of GFXterm, i quickly discovered how messy things could get if a window grew too large - basically, a window could grow to be 8 pixels larger than the physical screen dimensions, after which things went very wrong. many folks use GFXterm with large fonts, which means that at a 100x50 terminal size this limitation is easily hit.


cheers,
rob   :-)
Edited 2021-02-26 01:20 by robert.rozee
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10591
Posted: 03:30pm 25 Feb 2021
Copy link to clipboard 
Print this post

Rob

I'm not asking for it. Merely pointing out that the line length on CMM2 is a function of 14 modes and 7 fonts, not counting any user loaded fonts
 
panky

Guru

Joined: 02/10/2012
Location: Australia
Posts: 1116
Posted: 10:32pm 25 Feb 2021
Copy link to clipboard 
Print this post

Thanks for the detailed response Rob, it is not a show stopper in any way - just thought I would ask the question
Doug.
... almost all of the Maximites, the MicromMites, the MM Extremes, the ArmMites, the PicoMite and loving it!
 
robert.rozee
Guru

Joined: 31/12/2012
Location: New Zealand
Posts: 2466
Posted: 01:30am 26 Feb 2021
Copy link to clipboard 
Print this post

if F407 mmbasic supports OPTION DISPLAY lines [,chars] then a simple solution may be for it to check this setting and adjust the behaviour of LIST COMMANDS and LIST FUNCTIONS accordingly.


cheers,
rob   :-)
Edited 2021-02-26 21:49 by robert.rozee
 
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 2025