[Simh] small footprints & OS/2 and MS-DOS

Jason Stevens neozeed at gmail.com
Fri Jan 23 17:18:03 EST 2009


Well I was experimenting with the idea of a 'small' dedicated system
to run simh on, when I remember that SIMH used to work on OS/2 and of
course MS-DOS... I remember compiling it with Watcom's compiler...

Anyways Watcom is nolonger, but OpenWatcom has all the important
bits..  http://www.openwatcom.org/  Oh and it's free!

Using the OS/2 stuff still in SIMH I was easily able to build versions
with Watcom that run on OS/2 2.x and of course MS-DOS....

Naturally I think MS-DOS is the smallest and easiest enviroment to
setup, along with freedos..

There is one change I had to make to the OS/2 code in sim_timer to
make it work enough to boot the microvax, and run VMS & BSD..  I
didn't bother reflecting the actual time into the calculations, just
so that the microvax will pass it's POST and I don't think it really
mattered... I could be wrong, of course...

Naturally there is no real idling under MS-DOS so I didn't do anything
in those regards... I do recall that DOS/4GW allows for somewhat easy
calls into real mode drivers so the next step then is to interface
with packet drivers to allow network access..

For the curious the code to allow OS/2 / MS-DOS run simh microvax is:


//this goes in sim_timer.c

#elif defined (__WATCOMC__)

int sim_os_tick;
const t_bool rtc_avail = FALSE;

uint32 sim_os_msec ()
{
uint32 msec;
sim_os_tick++;
msec=sim_os_tick*1000;
return msec;
}

void sim_os_sleep (unsigned int sec)
{
    sim_os_tick++;
return;
}

uint32 sim_os_ms_sleep_init (void)
{
    sim_os_tick=0;
    return FALSE;
}

uint32 sim_os_ms_sleep (unsigned int msec)
{
return 1;
}

---- And for what passes as a screenshot..

DOS/4GW Protected Mode Run-time  Version 1.97
Copyright (c) Rational Systems, Inc. 1990-1994

VAX simulator V3.8-0
NVR: buffering file in memory
C:\PROJ\SIMH\WATCOM\VAX.ini> set cpu idle=VMS
Command not allowed

←[c
KA655-B V5.3, VMB 2.7
Performing normal system tests.
40..39..38..37..36..35..34..33..32..31..30..29..28..27..26..25..
24..23..22..21..20..19..18..17..16..15..14..13..12..11..10..09..
08..07..06..05..04..03..
Tests completed.
>>>
Simulation stopped, PC: 200436AD (JSB @64(R11))
sim> show cpu
CPU, idle disabled, 32MB, HALT to SIMH
sim>



More information about the Simh mailing list