On Dec 11, 2024, at 10:58, Mike Katz via cctalk
<cctalk(a)classiccmp.org> wrote:
David,
Were you using a Gimix Video Board per chance?
I worked for Gimix in 1980/1981.
There was a very good screen based editor called the Programma Improved Editor (Pie)
written by John F. Wakerly that made excellent use of the Gimix Video Board. There was
also a version for serial terminals.
One nice thing about the VT-100 is that you can scroll a region without affecting other
regions on the display. A well written driver that takes this into account can be fairly
fast even at 9600 board.
My goal here is to improve the application and not to write an entire VT-100 windowing
package.
The Txwindows package is more than I need but I am going to take the linux version of it
and see if I can get it working via a serial port on a Raspberry Pi. I will convert all
of the printf() and fwrite() calls to my output routine.
Since the code was designed to run on Windows/Linux/OS2 it also has a bunch of sprintf()
calls. In general I avoid printf()/scanf() like the plague because they are big and slow
and I have found that i rarely need that level of sophisticated output formatting in an
embedded system.
I have written a set of functions (input and output) that fulfill most of my text
formatting needs. I will put it up on git one of these days.
Thank you,
Mike
On 12/11/2024 4:16 AM, David Wade via cctalk
wrote:
On 10/12/2024 07:13, Tom Hunter via cctalk
wrote:
If this were my project, I would read the VT100 manual and design and
implement a serial driver and basic text window library from scratch
running on the bare hardware. It wouldn't be more than 1000 lines of C,
more likely something like 500 lines. I am a retired embedded
software engineer and did these things for a living. I would budget 2 to 3
days including reading the manual.
Tom
I was wondering why no one else suggested this. I did something similar for the
memory mapped displays on my 6809 way back when....
.. as for doing it on a VT it might not be as simple as it sounds. If you are going to
allow side-by-side windows you will need to keep a copy of the window text in memory and
re-write each window every time you want to scroll the windows.
Dave
On Tue, 10 Dec 2024, 1:27 pm Henry Bent via
cctalk, <cctalk(a)classiccmp.org>
wrote:
> If this were my project, I would start by getting newlib going and then
> seeing if I could use that to run an older (presumably more simple, with
> fewer requirements) version of screen.
>
> -Henry
>
> On Mon, Dec 9, 2024, 22:04 Mike Katz <bitwiz(a)12bitsbest.com> wrote:
>
>> Overlapping would be amazing, different screen quadrants at a minimum. I
>> am going to try to port Txwindows as that is the only package I could
> find
>> On Dec 9, 2024 8:40 PM, Henry Bent <henry.r.bent(a)gmail.com> wrote:
>>
>> On Thu, 5 Dec 2024 at 20:26, Mike Katz via cctalk <cctalk(a)classiccmp.org
>>
>> wrote:
>>
>> Thank you.
>>
>> Screen is a linux utility. I am writing this on a bare metal (no
>> operating system) ESP32 dev board.
>>
>> Right now the program is text menu driven. I would like to enhance it
>> with textual windows.
>>
>> The Txwindows package is perfect but over kill and will need some
>> hacking to work in my environment and it doesn't support the VT-100's
>> region scrolling so screen updates might be slow.
>>
>>
>> What might be helpful is if you could be more specific about what it is
>> you're trying to achieve. Do you want arbitrarily sized, overlapping
>> windows or do you just want the screen divided up into discrete segments?
>>
>> -Henry
>>
>>
>>