BASIC-DOS

A PCjs Retro-Programming Project

BASIC-DOS is on Twitter Project maintained by jeffpar

BASIC-DOS with Dual Monitors

The machine below is configured with both MDA and CGA adapters, each connected to its own monitor, and BASIC-DOS has been configured for two sessions, with each session assigned to its own monitor. At first glance, it might appear there are two machines running, but it really is just a single IBM PC running two BASIC-DOS sessions.

IBM PC, 256Kb RAM, Dual Floppy Drives, MDA and CGA

Monochrome Display
Color Display
Caps
Num
Scroll
F1
F2
F3
F4
F5
F6
F7
F8
F9
F10
Esc
1 !
2 @
3 #
4 $
5 %
6 ^
7 &
8 *
9 (
0 )
- _
= +
Back
-
Num
Scroll
Tab
Q
W
E
R
T
Y
U
I
O
P
[ {
] }
7
↑ 8
9
Ctrl
A
S
D
F
G
H
J
K
L
; :
' "
` ~
← 4
5
→ 6
+
Shift
\ |
Z
X
C
V
B
N
M
, <
. >
/ ?
Shift
PrtSc
1
↓ 2
3
Alt
Space
Caps
Ins 0
Del .
Esc
Tab
F1
F2
F3
F4
F5
F6
F7
F8
F9
F10
Num
Scroll
1 !
2 @
3 #
4 $
5 %
6 ^
7 &
8 *
9 (
0 )
- _
= +
Back
-
+
Q
W
E
R
T
Y
U
I
O
P
[ {
] }
7
↑ 8
9
A
S
D
F
G
H
J
K
L
; :
' "
` ~
← 4
5
→ 6
\ |
Z
X
C
V
B
N
M
, <
. >
/ ?
Shift
PrtSc
1
↓ 2
3
Ctrl
Shift
Alt
Space
Caps
Ins 0
Del .

Like all the other BASIC-DOS Demos, use SHIFT-TAB to toggle keyboard focus between sessions. Since these sessions don’t use borders, the presence of a blinking cursor indicates which session has focus.

Also, while the machine is configured for 256K, if you TYPE CONFIG.SYS, you’ll see that it contains a MEMSIZE=128 line which limits total BASIC-DOS memory usage to 128K. You can use the MEM command to display current memory usage and MEM /D for detailed memory usage.

You might be tempted to think that MEMSIZE is a way to “partition” memory, so that each session has a dedicated amount, but no – MEMSIZE is simply a means of testing BASIC-DOS with different memory sizes. And in any case, partitioning memory would not be a good strategy.

CONFIG.SYS from the BASIC-DOS4 Diskette

REM Demonstration of dual monitors with full-screen sessions
MEMSIZE=128
FILES=20
SESSIONS=4
CONSOLE=CON:80,25,0,0,0
SHELL=COMMAND.COM PRIMES.BAT
CONSOLE=CON:80,25,0,0,0,1
SHELL=COMMAND.COM MSBASIC B:DONKEY

Copyright (c) 2020-2021 Jeff Parsons Released under MIT License