VOGONS


First post, by tauro

User metadata
Rank Member
Rank
Member

Is there such a thing as a terminal multiplexer such as GNU Screen, Tmux, etc, for DOS?

What's the closest alternative?

I read that there was an attempt in the early 90's called Twin but was soon abandoned because DOS lacks multi-tasking.

My main objective is being able to scroll (scrollback buffer), copy/paste, save screens, etc.

I found there's something called peruse which might be of help but I haven't tried it yet.

Reply 2 of 19, by davidrg

User metadata
Rank Member
Rank
Member

Novell DOS 7 can preemptively multitask and switch between multiple DOS programs according to the back of the box. Manual doesn't say anything about copy&paste between applications or terminal scrollback though. I assume copy&paste between applications wouldn't be impossible to implement but I can imagine scrolling could be a challenge (how do you scroll something like edit?).

Reply 3 of 19, by Grzyb

User metadata
Rank Oldbie
Rank
Oldbie

There's plenty of multitaskers and task-swappers for DOS, some of them even shipped with certain DOS versions, see eg. Dosshell.
But I'm not aware of any with support for scrollback or copy&paste.

Nie tylko, jak widzicie, w tym trudność, że nie zdołacie wejść na moją górę, lecz i w tym, że ja do was cały zejść nie mogę, gdyż schodząc, gubię po drodze to, co miałem donieść.

Reply 4 of 19, by Jo22

User metadata
Rank l33t++
Rank
l33t++

PC-MOS/386. It's a real multi-user, multi-tasking OS with support for serial terminals.

PC-MOS/386 released under GPL

Edit: If you merely need copy/paste between different DOS applications, have a look at DesqView.

Or Windows /386. 😉
https://www.youtube.com/watch?v=OcjvgxAKiHs

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 5 of 19, by tauro

User metadata
Rank Member
Rank
Member

Thanks for the answers guys, neither of them is exactly what I'm looking for.
Like I said, I'm looking for something like GNU screen or tmux, text only. Maybe the programs I linked could do the trick, but I haven't tried them yet.

Jo22 wrote on 2022-04-02, 21:02:

How cringe is that commercial? 😆

Reply 6 of 19, by Jo22

User metadata
Rank l33t++
Rank
l33t++
tauro wrote on 2022-04-03, 16:43:
Jo22 wrote on 2022-04-02, 21:02:

How cringe is that commercial? 😆

Here's another one. xD
https://www.youtube.com/watch?v=MOmdc6wIb4I

And one for DOS 5.
https://www.youtube.com/watch?v=dmEvPZUdAVI

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 7 of 19, by doshea

User metadata
Rank Member
Rank
Member

I used SCROLLit for scrollback, you can find it here: http://ftp.mpoli.fi/pub/software/DOS/UTILS/SCREEN/. It lets you select lines and save them to a file. Naturally you can use it inside a DOS session in DESQview or Windows to scroll back an individual DOS session's history, then use DESQview or Windows's copy facility to copy from the visible part of the buffer.

I imagine that there were probably many copy and paste TSRs out there, just search http://cd.textfiles.com/simtel/simtel20/MSDOS … EEN/.index.html for "paste" for example. I just used Windows for this (and confirmed that DESQview can do it too). You could probably use a combination of SCROLLit and a copy/paste TSR with some other multitasker.

Reply 8 of 19, by tauro

User metadata
Rank Member
Rank
Member
doshea wrote on 2022-04-09, 08:53:

I used SCROLLit for scrollback, you can find it here: http://ftp.mpoli.fi/pub/software/DOS/UTILS/SCREEN/. It lets you select lines and save them to a file. Naturally you can use it inside a DOS session in DESQview or Windows to scroll back an individual DOS session's history, then use DESQview or Windows's copy facility to copy from the visible part of the buffer.

I imagine that there were probably many copy and paste TSRs out there, just search http://cd.textfiles.com/simtel/simtel20/MSDOS … EEN/.index.html for "paste" for example. I just used Windows for this (and confirmed that DESQview can do it too). You could probably use a combination of SCROLLit and a copy/paste TSR with some other multitasker.

Thanks!! I will try them and try to find the setup that suits me better. As I can see there are a lot of options and it will take time.
For instance, I'm currently using DOSKey (not the official Windows one), but it doesn't save history to a file.
One thing that's bugging me is that I can't do CTRL+P to go back in the command history. I have to press the UP arrow. If I screw up and press CTRL+P then... DOS hangs and it's time for rebooting. It looks for the printer, apparently. It would be great to block that. It even happens on MS-DOS command prompts on Windows.

I've been trying that little program I linked "Peruse" and it works like a charm. Not all the programs let you scroll back, I guess not all write to the buffer, somehow. For example, "ls" from a certain port of the GNU utils doesn't seem to do it, but native DOS programs such as "dir", do.

Reply 9 of 19, by doshea

User metadata
Rank Member
Rank
Member
tauro wrote on 2022-04-10, 11:22:

For instance, I'm currently using DOSKey (not the official Windows one), but it doesn't save history to a file.

Have you tried alternate command interpreters? I just checked and 4DOS 7.50 (not sure if it's the last version) doesn't save history either, but at least it's much nicer than regular DOS COMMAND.COM + DOSKEY.

One thing that's bugging me is that I can't do CTRL+P to go back in the command history. I have to press the UP arrow. If I screw up and press CTRL+P then... DOS hangs and it's time for rebooting. It looks for the printer, apparently. It would be great to block that. It even happens on MS-DOS command prompts on Windows.

Some options you could consider:

Find a TSR which claims to fix this specific problem, since I seem to recall it being something that people did find annoying. Worse, they might have had a printer attached and wasted paper by hitting the wrong key. I assume you have it worse than DOS users who just accidentally hit Ctrl-P - I assume you're hitting it intentionally because you're used to *nix shells?

Find a TSR which redirects printing to a file: should stop the hanging, but might fill up your disk inadvertently, since if I recall correctly Ctrl-P toggles printing everything on the screen.

"Rebind" Ctrl-P using a suitable ANSI driver: maybe it doesn't work, but I think it should, I imagine the driver should intercept the key before it gets to whatever interprets Ctrl-P (DOS? BIOS?). Rebinding keys via the standard ANSI.SYS that comes with DOS was considered a security vulnerability - you might TYPE a text file and find one of your keys was changed to run a FORMAT command - so I used an ANSI.COM from PC Magazine which let me pass it a /B 10 option to limit the size of the rebindings buffer so no malicious text files could add more bindings after I set mine up (I'm not 100% sure that 10 was the right buffer size, I didn't write comments), then I used TYPE ...\KEYS.ANS to load my key bindings. This is a hex dump of the contents of that file:

0000000: 1b5b 343b 221b 6578 6974 0d0a 2270 0d0a  .[4;".exit.."p..
0000010: 0d0a

That rebinds Ctrl-D to send "exit" followed by CRLF (probably didn't need both CR and LF there?) so I could exit from a subshell or close a command prompt in Windows/DESQview/etc. just like I closed a shell in *nix, which you might appreciate. You could probably search old PC Magazine articles using Google Books to find out the syntax of the ANSI escape codes for rebinding keys if they're not actually standard VT100 or something.

Use bash: DJGPP provides bash, and I assume this is what you're used to if you're hitting Ctrl-P, although I assume it uses a lot more RAM.

I've been trying that little program I linked "Peruse" and it works like a charm. Not all the programs let you scroll back, I guess not all write to the buffer, somehow. For example, "ls" from a certain port of the GNU utils doesn't seem to do it, but native DOS programs such as "dir", do.

I imagine that programs that don't use BIOS screen routines but instead write directly to video memory would not be captured by scrollback buffers, maybe that's the issue.

Just based on what I have installed in a VM, I tried SCROLLit 1.7 with fairly old DJGPP bash and ls (bash is version 2.04) and the output was captured in the scrollback buffer. The DJGPP tools are 32-bit though, so they're kind of heavyweight and might not be what you want.

Reply 10 of 19, by doshea

User metadata
Rank Member
Rank
Member

I might have found a better option: http://cd.textfiles.com/simtel/simtel0595/DIS … ARD/WCED19C.ZIP I haven't tried it, but it seems to be described as tcsh-like including completion, and one of the key binding options is Emacs and it definitely uses Ctrl-P for previous line.

Wced is a command line editor. Features include a history of commands typed, aliasing of commands (with parameters), filename co […]
Show full quote

Wced is a command line editor. Features include a history of
commands typed, aliasing of commands (with parameters), filename
completion and command line editing. The main aim of Wced is to
improve the command line editing of DOS but use as little memory as
possible. When installed, wced uses approximately 14k of
conventional memory. Wcedlite performs like Wced but has no alias
functions.

If I was going to use it, I think I'd use the wcedlite version and use .BAT files for my "aliases" rather than consume RAM for them, since I assume it would keep the aliases in RAM.

It even supports Alt-F/Alt-B to go forward/backward by a word and lets you customise how it determines word boundaries, which sounds nice! I might try it one day.

Reply 11 of 19, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
doshea wrote on 2022-04-09, 08:53:

I used SCROLLit for scrollback, you can find it here: http://ftp.mpoli.fi/pub/software/DOS/UTILS/SCREEN/. It lets you select lines and save them to a file. Naturally you can use it inside a DOS session in DESQview or Windows to scroll back an individual DOS session's history, then use DESQview or Windows's copy facility to copy from the visible part of the buffer.

I imagine that there were probably many copy and paste TSRs out there, just search http://cd.textfiles.com/simtel/simtel20/MSDOS … EEN/.index.html for "paste" for example. I just used Windows for this (and confirmed that DESQview can do it too). You could probably use a combination of SCROLLit and a copy/paste TSR with some other multitasker.

I come to the need for a scrolling utility and this one is cool. I didn't RTFM much so would you bother to share if it has any hotkey to directly scroll (like in linux) instead of an activation hotkey?
BTW it's a shareware and has 30 day of tiral.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 12 of 19, by doshea

User metadata
Rank Member
Rank
Member
crazii wrote on 2022-07-12, 16:28:

I come to the need for a scrolling utility and this one is cool. I didn't RTFM much so would you bother to share if it has any hotkey to directly scroll (like in linux) instead of an activation hotkey?

Sorry, I don't know if it has anything like Linux's behaviour, after all these years I think I'm just used to DOS and Linux being different.

BTW it's a shareware and has 30 day of tiral.

I wish I could register it but it doesn't seem to be possible to contact the author. NAG-BUSTER v1.1d has support for Scrollit 1.7.

Reply 13 of 19, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
doshea wrote on 2022-07-15, 12:23:

I wish I could register it but it doesn't seem to be possible to contact the author. NAG-BUSTER v1.1d has support for Scrollit 1.7.

You mean c**k it? Thanks! I will try it later.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 14 of 19, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
doshea wrote on 2022-07-15, 12:23:

I wish I could register it but it doesn't seem to be possible to contact the author. NAG-BUSTER v1.1d has support for Scrollit 1.7.

Didn't find NAG-BUSTER 1.1d but as I searched on the net and found nag buster itself may need patches to enable some features, that's very funny. 🤣
But I managed to found a serial for ScroLLit 1.8, as I was searching the key word for nag-buster 1.1d, another funny thing too. 🤣 LMAO

It might be inappropriate to talk about those but I think it will make an exception that those software are totally out of maintenance. 😁

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 15 of 19, by doshea

User metadata
Rank Member
Rank
Member

I suppose it's cheaper to register a cracking program than to individually register all the programs that it can crack, so people might still register it? 😀

Back on topic, I had a look through the book DOS Power Tools (I'm not sure if it's possible to read it online) and found out that PC Magazine had a utility a bit like Scrollit: WAITASEC (link to PC Magazine article in Google Books).

I guess it probably uses conventional memory and hence has a smaller buffer than Scrollit which uses XMS, but it does have assembler source code available. The license on that source is unclear, but it might be a useful read for anyone who wants to figure out how to write their own utility. That might be me one day 😀

Here is the documentation in the copy of this utility I got from simtel:


WAITASEC (and SCROLL) Charles Petzold
Command(s) PC Magazine Vol 4, No 24
Copyright 1985 Ziff-Davis Publishing Company
______________________________________________________

Purpose: Uses the single-keystroke ScrollLock key to
halt a fast-scrolling display; then allows
you to scroll backwards, recalling previous
screens.

Format: WAITASEC (loads memory-resident program)
<ScrollLock> (activates command)

Remarks: WAITASEC is a memory-resident program that is
normally loaded through your AUTOEXEC.BAT
file. Thereafter, alternately pressing and
releasing the ScrollLock key will halt and
restart a scrolling display, e.g., a lengthy
DIR listing.

While holding down the ScrollLock key to
freeze the display, if you also press one of
the cursor movement keys (Home, Up Arrow,
PgUp, End, Down Arrow, or PgDn), the display
will not resume scrolling when you release
the ScrollLock key. Thereafter, the Up and
Down arrow keys move the display by one line,
the PgUp and PgDown move it by 25 lines, and
the Home and End keys take you to the
beginning and end of the stored screen
memory. Pressing any non cursor key at this
point deactivates the stored mode, and the
original scrolling resumes.

Notes:

1. WAITASEC will not work with an 80-column
color/graphics display if an unmodified
PC-DOS ANSI.SYS has been loaded. (The
ANSI.SYS that comes with various
versions of MS-DOS does not cause
problems with WAITASEC.) To run with
IBM's ANSI.SYS, make a copy
(MODANSI.SYS) of the original ANSI.SYS
and use DEBUG to patch the copy as
follows:

DEBUG MODANSI.SYS
E 29D 90 90
E 2A1 90 90
W
Q

Put the modified MODANSI.SYS in your
CONFIG.SYS file in place of ANSI.SYS.

2. Because of the way they handle TTY
output, certain EGA cards will not
permit WAITASEC to scroll backwards.
Show last 18 lines
                         This problem can often be cured by
adding MODANSI.SYS, as above.

3. WAITASEC does not save your current
display screen. To save your current
display, before beginning a scroll,
enter the complementary SCROLL command,
and everything on the screen will scroll
off the top and be captured in the
WAITASEC buffer.

4. While WAITASEC has been found compatible
with XyWrite III (XYKBD.COM loaded) on a
PC AT, as with other memory-resident
programs, unforeseen hardware and
software incompatibilities may be
encountered.

Reply 16 of 19, by tauro

User metadata
Rank Member
Rank
Member

Very interesting Doshea! that's another great alternative to try. You're a great scout.

How do you find all this?

I recently downloaded the simtel CDs from archive.org just to have all these files on hand.

doshea wrote on 2022-09-03, 02:10:

I guess it probably uses conventional memory and hence has a smaller buffer than Scrollit which uses XMS, but it does have assembler source code available. The license on that source is unclear, but it might be a useful read for anyone who wants to figure out how to write their own utility. That might be me one day 😀

That's very exciting news! may I suggest GNU screen/Emacs-like shortcuts? (and disabling C-p) 😆

Reply 18 of 19, by doshea

User metadata
Rank Member
Rank
Member
tauro wrote on 2022-09-03, 21:41:

Very interesting Doshea! that's another great alternative to try. You're a great scout.

How do you find all this?

In this case my dad bought the DOS Power Tools book sometime back when it was relevant - probably having the PC Magazine logo on it meant it seemed reputable, or maybe he read about it in the magazine - and held onto it until I asked for it probably 10 years ago! I don't know when it came out but it was talking like DOS version 4 was the latest version 😀 Given the copyright message on SCROLLit, I suppose I probably found it on a BBS in the mid 1990s, or else dad or I read about it in some magazine.

None of that is very helpful to anyone who wants to find things today, but what might be useful is looking at shovelware CDs like simtel (cd.textfiles.com is a good resource for finding other ones) and reading - or even searching - old PC Magazines at books.google.com. Both of these can sometimes work if you're searching for something by name, searching for a tool that has some particular capability (shovelware CDs are better because you can just try things out), or just feel like reading and seeing what things you might discover that you didn't even know you needed!

I recently downloaded the simtel CDs from archive.org just to have all these files on hand.

I have a few from different years, and they also have some which are DOS-only, I think some Windows-only ones and some mixed ones. I don't have them all though 😀

That's very exciting news! may I suggest GNU screen/Emacs-like shortcuts? (and disabling C-p) 😆

Sure, if I ever actually do it 😁

tauro wrote on 2022-09-04, 11:43:

I couldn't find v4n24.zip on the simtel cd images from archive.org 🤔
Luckily I found it here https://ftp.sunet.se/mirror/archive/ftp.sunet … pcmag/v4n24.zip
But nowhere else! maybe someone else knows about a different mirror.

I found out the filename was "vol4n24" from a Google search for "site:cd.textfiles.com waitasec" and then found it in some of my simtel CDs:

June 1992: vol4n26.arc
October 1993: vol4n24.zip
September 1994: vol4n24.zip
May 1995: vol4n24.zip
September 1997: no longer there in , I guess it was too old by this point

Google searches of site:cd.textfiles.com can sometimes be useful like this for finding something when you don't know the filename (or finding what shovelware CD it was on even if you do know the filename). I would love a site that actually indexed the full contents of the FILE_ID.DIZ files in all these archives and made them searchable too though, and dealt better with all the duplicates spread across all the CDs.

Reply 19 of 19, by doshea

User metadata
Rank Member
Rank
Member

I just happened to run across the DOS Power Tools book at http://vtda.org/books/Computing/OperatingSystems/ although it's the first edition; I think the second edition had a chapter about issues in DOS 4, although this first edition does mention DOS 4 a little. Others might find it interesting to browse through occasionally like I have.

Edit: actually I think I might only have the first edition myself!