4 ms·
>could you switch from the subprogram back to the main program without exiting the subprogram? There were TSR task-switcher programs to do that, effectively al
by Falkon1313 7y ago
>could you switch from the subprogram back to the main program without exiting the subprogram?
There were TSR task-switcher programs to do that, effectively allowing you to turn normal programs into TSRs. I had a single floppy-drive PC with no hard drive, but I had 640K of RAM. So I would run the task switcher from its floppy, allocate task 1 some RAM and load that program from its floppy, then allocate task 2 some RAM and load that from its floppy, then switch to task 3 and use the rest of the RAM for whatever. Whenever needed, I could switch back to task 1 or task 2, without having to switch floppies or exit the current task. I think it was DOS 3.30 when I used that. It was handy to keep small utilities (like a text editor and unarchiver) loaded and ready to look at the contents of any disk.
The list from Ralf Brown's Interrupt List gives an idea of what some of the task switchers were: http://www.ctyme.com/intr/cat-011.htm http://www.ctyme.com/intr/cat-011.htm
[Topview](https://en.wikipedia.org/wiki/IBM_TopView https://en.wikipedia.org/wiki/IBM_TopView) appears to have had an interesting story. And of course DESQview followed. I never used either of those.
You could do a lot in DOS with ASM and interrupts, as long as the code was small. But with the hardware limitations, and the way people usually used PCs during DOS's prime years, it didn't really make sense to put too much effort into multitasking. Towards the end we were often rebooting with distinct boot disks, each with a different AUTOEXEC.BAT and CONFIG.SYS customized to get the most out of the hardware for each specific program. Multitasking would be pointless in that case.