jsDosBox

Love DOSBox on java, but don’t like java? Love the power of Google’s v8 javascript engine? Well then you’ll love this, introducing jsDOSBox, a port of jDOSBox to javascript!

That’s right, with chrome, it is as simple as click and go!

Doom in dosbox all in javascript!

So how does it perform? well OK OK, its slow, but it sure does have promise!  Then again it could be my laptop.  But wow, emulation in javascript!

Test it here.

OpenBSD 5.1 released!

I saw the announcement that OpenBSD 5.1 was just released today (May day release?) Anyways I thought I’d boot it up on SIMH to check that the VAX is still working. So here is a minimal ini file, that I used.

set cpu 64m
set rq0 ra92
att rq0 openbsd_vax
set rq1 cdrom
att rq1 cd51.iso
at xq0 bob
boot cpu

I fired up SIMH, and away it went!

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.
>>>boot dua1:
(BOOT/R5:0 DUA1

 

2..
-DUA1
1..0..
>> OpenBSD/vax boot [1.16] <<
>> Press enter to autoboot now, or any other key to abort: 0
> boot bsd
878604+1623756+375488=0x2be99c
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California. All rights reserved.
Copyright (c) 1995-2012 OpenBSD. All rights reserved. http://www.OpenBSD.org

OpenBSD 5.1 (RAMDISK) #32: Tue Feb 14 14:09:56 MST 2012
[email protected]:/usr/src/sys/arch/vax/compile/RAMDISK
MicroVAX 3800/3900 [0A000006 01530302]
cpu: KA655, CVAX microcode rev 6 Firmware rev 83
real mem = 67043328 (63MB)
avail mem = 61091840 (58MB)
mainbus0 at root
ibus0 at mainbus0
uba0 at ibus0: Q22
dz0 at uba0 csr 160100 vec 196 ipl 15
mtc0 at uba0 csr 174500 vec 508 ipl 15
mscpbus0 at mtc0: version 5 model 3
mscpbus0: DMA burst size set to 4
mt0 at mscpbus0 drive 0: TK50
mt1 at mscpbus0 drive 1: TK50
mt2 at mscpbus0 drive 2: TK50
mt3 at mscpbus0 drive 3: TK50
uda0 at uba0 csr 172150 vec 504 ipl 15
mscpbus1 at uda0: version 3 model 3
mscpbus1: DMA burst size set to 4
ra0 at mscpbus1 drive 0: RA92
ra1 at mscpbus1 drive 1: RRD40
ra2 at mscpbus1 drive 2: RD54
rx0 at mscpbus1 drive 3: RX50
qe0 at uba0 csr 174440 vec 500 ipl 15: delqa, address 08:00:2b:aa:bb:cc
boot device: ra1
ra0: 1436MB, 512 bytes/sector, 2940951 sectors
ra1: 650MB, 512 bytes/sector, 1331200 sectors
ra2: attempt to bring on line failed: unit offline (not mounted) (code 3, subco
de 1)
ra2: not mounted/spun down
ra2: 0MB, 512 bytes/sector, 0 sectors
rx0: attempt to bring on line failed: unit offline (not mounted) (code 3, subco
de 1)
root on rd0a swap on rd0b dump on rd0b
clock has gained 76 days — CHECK AND RESET THE DATE!
erase ^?, werase ^W, kill ^U, intr ^C, status ^T

Welcome to the OpenBSD/vax 5.1 installation program.
(I)nstall, (U)pgrade or (S)hell?

You can find OpenBSD on OpenBSD.org, and of course the mirrors.

Flight simulator 4!

Flight Simulator 4

From a comment made by ampharos, there is all kinds of weird stuff on the old Microsoft FTP server, including all kinds of stuff in the stress test directory.. So wandering around I came across something I never noticed, Flight Simulator 4!

That’s right and for MS-DOS.  I recall running this on OS/2 2.0 was kind of a big deal, but its cooler in dosbox! … Anyways, if you want click here, and download away.  I think this version was intended to more of a demo, but it’s still cool to watch the jet plane going through the motions.

What is amazing to me is just how compact it is… It seems there was a lot ‘more’ with less back then, but maybe we’ve come to expect so much more?

Every Manager’s Guide to OS/2

I got word of this on G+, and I finally got somewhere where I could look at it properly:

With all the articles talking about the 25th birthday of OS/2 posted two weeks ago I found this one from David Strom. (Windows 8: The OS/2 of Today,) On this article he said he wrote an OS/2 book that never got finished or released. So I contacted the author and requested his permission to release the book under a license that allows derivative works.

David Strom released his 1988 book “Every Manager’s Guide to OS2” under the Creative Commons Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) license.

This 200 page book belongs OS/2 1.x era and it is in draft state. It has revision remarks and missing screenshots. I had transformed it to docx, odt and pdf format and it is now available for download at hobbes.

Link: http://hobbes.nmsu.edu/…

I will like to thank David Strom for making it possible.

 

Enjoy!

The blog will be on hiatus for a bit…

Personal issues have intervened with pretty much everything. This morning, I packed as much as I could into three suitcases, bought a one-way ticket, and I’m leaving my ‘home’ behind.

While in the past I’ve taken a few months off here & there I’ve done my best the last two years to get in an update of something at least 2x a week, if not more.

However, I don’t feel that I am in any position to do so now, I don’t even have a proper place to live so the next while will be .. interesting to say the least.

If things get too crazy I’ll wind up archiving this thing in Egypt and I don’t know from there…

But at the same time, who knows the future isn’t written.

there is not fate, but what we make.

NetBSD 1.2 for the MicroVAX II package…

Well looking around on my sourceforge page, it hit me that I never did do a NetBSD 1.2 MicroVAX II package, so I thought I’d slap one together.  I basically just followed my install notes, and added in some stuff that I’d built earlier.

So for those who care, here you go!

From the package’s readme:

Welcome to this minimal version of NetBSD 1.2 for the MicroVAX II.

Getting started
:::::::::::::::

just fire up the emulator like this:

vax.exe run.ini

—–8<—–8<—–8<—–8<—–8<—–8<

C:\netbsd1.2\test>vax.exe run.ini

VAX simulator V3.8-1
run.ini> set idle OLDVMS
Non-existent device
TS: creating new file
Loading boot code from ka655x.bin

?[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.
>>>
—–8<—–8<—–8<—–8<—–8<—–8<

You’ll be booted up to the boot rom. next we have to boot from the
hard disk. NetBSD’s bootblocks were very fragile back then so
it won’t autoboot. I never did tear into it to see why it won’t boot
so you’ll have to do it the old fasioned way.
>>>b/3 dua0
(BOOT/R5:3 DUA0

2..
-DUA0
1..0..
howto 0x3, bdev 0x11, booting…done. (11108+33996)

Nboot
:ra(0,0)netbsd
—–8<—–8<—–8<—–8<—–8<—–8<

Once you’ve booted the kernel, it’ll probe out the hardware, then
it’ll ask where the root disk is (ra0a).

—–8<—–8<—–8<—–8<—–8<—–8<
zs0: timeout waiting for TS_SSR
tmscp0 at uba0 csr 174500 vec 760, ipl 15
tms0 at tmscp0 slave 0
qe0 at uba0 csr 174440 vec 754 ipl 15
qe0: delqa, hardware address 08:00:2b:aa:bb:cc
dz0 at uba0 csr 160100 vec 304 ipl 15
root device?
—–8<—–8<—–8<—–8<—–8<—–8<

Armed with this information you can simply hit enter as it’ll want
to drop to single user mode, then hit contrl+d and it’ll resume booting
into multiuser mode.

—–8<—–8<—–8<—–8<—–8<—–8<
root device? ra0a
?Enter pathname of shell or RETURN for sh:
#
—–8<—–8<—–8<—–8<—–8<—–8<
remember it’s enter then control+d

—–8<—–8<—–8<—–8<—–8<—–8<
#^D setting tty flags
starting network
add host amnesiac.my.domain: gateway localhost
add net default: gateway 10.0.2.2
starting rpc daemons: portmap.
starting system logger, time daemon.
checking for core dump…
savecore: no core dump
checking quotas: done.
building databases…
clearing /tmp
standard daemons: update cron.
starting network daemons: routed printer inetd.
creating runtime link editor directory cache.
starting local daemons:.
Tue May 5 08:29:22 PDT 1998
May 5 08:29:22 amnesiac init: kernel security level changed from 0 to 1

NetBSD/vax (amnesiac.my.domain) (console)

login:
—–8<—–8<—–8<—–8<—–8<—–8<
And there we go, NetBSD is all booted. The network is configured, you
may wish to change the /etc/resolv.conf if you so wish.
USING NETBSD
::::::::::::

Once the system is booted up into multiuser mode, TCP/IP is enabled and
you can now telnet into your system, by connecting to the localhost on
port 42323.

telnet localhost 42323

will connect you, and you’ll get the login prompt:

—–8<—–8<—–8<—–8<—–8<—–8<
NetBSD/vax (amnesiac.my.domain) (ttyp0)

login:
—–8<—–8<—–8<—–8<—–8<—–8<

There is no root password, so you can just login as root, and away you
go. I prefer to telnet in so I get a working terminal as the console
doesn’t do any VT100 emulation, its more of a dumb TTY. Outside of the
default programs in NetBSD the following programs have been installed
into the image:
* bash-2.0
* dungeon-2.5.6
* ircii-4.4
* lynx-2.8.2
* GNUmake-3.75
* pine-3.87
* screen-3.7.1
* unzip552

This should at least make using the system somewhat tollerable.

FAQ
:::
Q:When I hit backspace I get ^H ‘s!!!
A:stty erase <backspace>

In unix they used keyboards with delete keys instead of backspaces… Oh the horrors.
SHUTTING DOWN
:::::::::::::

This should be simple, login as root and just issue the following command:

reboot

And you’ll get halted to the SIMH prompt from there you can just quit.

NetBSD 1.2 MicroVAX II

 

 

Jack Tramiel passes.

Jack Tramiel, passed away this Sunday.  For those of you who don’t know about him, he founded Commodore, and made it his mission to bring computing to the masses not the classes.  Thanks to him we had the PET, VIC and of course the beloved Commodore 64.  When things went south for him, he jumped to ATARI, after snagging it on a firesale from Warner as Jack wasn’t a guy to get put down, and helped bring the ST to the market.

Jack survived the holocaust in Poland, and left for Canada and started Commodore, originally focused on office furniture, filing cabinets and typewriters, then breaking into electronics with calculators. His leveraging of vertical businesses allowed him to bring to market products with the exact specifications that he wished.  And sometimes with unintended consequences like the file cabinet people making the seemingly indestructible PET cases.

Even though Commodore & Atari computers are no more, he has left a major mark on anyone who wanted a computer in the 1980’s who couldn’t afford a machine that cost as much as a car.

Tramiel is survived by his wife Helen, sons Gary, Sam, and Leonard.

Windows 3.1 turns 20.

Windows 3.1 turns 20!

I still remember when Windows 3.1 was announced, and there was all the excitement in our programming class as Windows 3.1 was going to change everything.  One kid had already gotten it on launch and was all excited as it supported more resources, had better fonts for printing, and included multimedia support!  The teacher was all excited about it too, as at the time everyone loved Windows 3.0 but only if it could do more in terms of being able to run more reliably, and support more things at once.

Later, I found out later that this lucky kid had a 386 with 8MB of ram, a full MIDI setup and VGA graphics, which of course blew away my glorious 80286-16 with 1MB of ram, a 20MB hard disk (with stacker!), and CGA.  Needless to say wing commander was actually playable on his computer.

There was no denying it, Windows 3.0 had started the shift from an exclusively MS-DOS world, in which everyone was hoping and searching for a graphical way out of, to the world of Windows we know today.  Windows 3.0 established the beached, and Windows 3.1 basically won the war.

Visually Windows 3.0 and 3.1 look very similar, but Windows 3.1 builds on Windows 3.0’s success and adds in some very important technologies, not limited to:

  • OLE
  • True Type Fonts
  • Better DPMI support
  • Better MS-DOS multitasking (386 Enhanced mode only)
  • better support for SVGA adapters
  • Multimedia support
  • no more UAE box
  • common dialog boxes!
  • primitive drag & drop support
  • 32-bit disk access
  • Improved WinHelp

The only ‘down’ side that I was aware of is that Windows 3.1 dropped support for IBM PC/XT’s.  You needed an 80286 processor as Windows 3.1 ran in protected mode, which at the time it only shut out one person that I knew of.  However he was just a new motherboard away from being able to run Windows 3.1 .  Which is another point against OS/2 as Windows 3.1 used the PC BIOS for almost all hardware access, even a 286 with mostly XT guts would work, but sadly even XT’s with Intel inboard 386’s were not supported, however AT’s with inboard 386’s were.  Even Microsoft MACH 20 card owners were restricted to Windows 3.0 standard mode (after some extensive updates). Also was there ever a special version of OS/2, like how the box claims?

While many of these things seem obvious now, back then this was a big thing to include so many technologies into Windows, and the more compelling the technology people were starting to replace their MS-DOS applications with windows ones, and the ‘dream’ of spending more and more time in Windows was starting to happen.  Although for many of us this ‘dream’ was a freaking nightmare as more applications would install and overwrite system libraries, and end up with massive system instabilities. Not to mention the DLL hell that many of us still face, as even side-by-side and .net only save us from some things, even though nothing is ever perfect.

Windows 3.1 also saw the PC world transition from 16bit to 32bit with the shift of users from 80286 based computers to 80386 and 80486 based machines.  With the split from IBM with OS/2 2.0, Microsoft was pressed to keep Windows 3.1 relevant to the 32bit crowd, and there was plenty of addons for Windows 3.1 to keep things going.  Namely:

  • Winmem32
  • Win32s
  • ODBC
  • WING
  • Video for Windows
  • Winsock

I don’t think Winmem32 ever took off, as it really was just a way to allocate larger memory segments, I’m almost positive that Watcom’s Windows Extender was more popular.  Naturally these predate the ever popular Win32s, which I’ve covered before.  WING was the fast video for games that I’ve covered once more again, with WinDoom. But I’ll just state it again, that Win32s was very important for bringing the whole ‘internet’ experience to mere users as almost everything that was TCP/IP based was 32bit for the ‘rest of the world’ and Win32s brought a taste of real 32bit computing to the masses, esp for people using Mosiac and Netscape.

Winvideo was Microsoft’s answer to the ever popular Quicktime.  Not to mention this add on was to solidify Windows 3.1 as a multimedia powerhouse. Microsoft still to this day has the test avi’s available for download here, And thanks to the University of British Columbia, you can download the Video for Windows Runtime here.

Needless to say the open standard of how the Winsock DLL should work helped standardize internet applications early, esp while there were multiple competing stacks for both MS-DOS and Windows.  Ultimatley when Microsoft wrote their own it pretty much took over everything, but seeing a chance to sell another version of Windows “Windows 3.11 for workgroups” was later released, which could be extended with MS’s TCP/IP.  At the end there even was a version of IE 5 for Windows 3.1, that I remember being as somewhat poor, and even NT 3.51 users were pushed into that direction.  Not to mention it had a tendency to not want to install on machines with more than 16MB of ram. I suppose the good thing is that IE 5 (probably 3 & 4 as well) came with PPP dialers, which was good enough for the majority of users.   Microsoft even made its improved Media player 5 (beta 2), and Net Show players available for 3.1, although I’ve never used them. “Good” IE releases didn’t come until 95/NT 4.0 anyways, the retrofitted ones were just unstable and lacking.

ODBC was a major selling feature in the world of databases, as now you could write uniform code to access data from all kinds of data sources.  Imagine if you had old dbase files, and a SQL database, it would be a major pain to tie them together. However programs like Access which used ODBC could quickly and easily talk to multiple data sources, and create data reporting and entry systems.  This is how the business world got hooked on Access & Visual Basic. ODBC typically came with either database programs, or with database driver disks, like the one for SQL Server.

While Windows was becoming more and more useful, users were going insane, clamoring for a full 32bit version, which led us down the ‘short’ road to Chicago, which was originally expected some time in 1993, but instead didn’t ship until August of 1995.  Windows NT 3.1 was another contender, but again it didn’t ship until March of 1993, and it was far too resource hungry for anything serious.  This left a gap for OS/2 to fill, and around the shipping time of Windows 3.1 was OS/2 2.0 which only included a runtime version of Windows 3.0 .  Lots of people feel that the additional features to 3.0 could have been delivered via a patch, but the 3.1 release was to purposely make OS/2 2.0 obsolete right after it had been released. Even OS/2 2.1 didn’t ship until May of 1993, although it was always locked into a race with Microsoft as various add-ons would either break OS/2 for Windows requiring updates to OS/2 or even sometimes entire new releases (Warp 3.0 for Win32s for example..)

What also made Windows 3.1 popular was the so called “Microsoft Tax” where Microsoft would sell to OEM’s copies of MS-DOS and Windows 3.1 at an incredibly low price with the condition that they resell them with *EVERY* PC that they sold.  This of course was annoying to UNIX users, even NT users as they all had copies of MS-DOS & Windows 3.1 that they never needed, nor wanted.  But this strategy was pretty successful at locking out not only OS/2 from being preloaded & configured on systems, but pretty much any hope of competition.  Many people attempted to sue, and only Digital Research managed to get anything out of it, as there excellent DR-DOS product was effectively barred from the market (very few end users ever change operating systems, they typically buy new PC’s its always been that way, upgrade sales lag way behind new sales), but by the time the courts had done what they were going to do the damage had been done.

1-2-3 for $495 or Office for $459 …

Another typical bundle was Microsoft Office.  Microsoft took advantage of Lotus’s failure in the market place to deliver a graphical application (The OS/2 switch doesn’t matter, Lotus still released a text mode app in the OS/2 heyday), combined with 1-2-3’s heft price tag, Microsoft made Word, Excel, PowerPoint and their Mail product available for less than the price of 1-2-3 with a new PC.

Microsoft C/C++ 7.0 + Windows 3.1 SDK $139.00

In the end it all comes down to developers.  Something that some companies still struggle with, esp those that positioned themselves in an OS/2 type fix.  If your native tools are too expensive, too restricted, nobody will write for you, esp if you can run other peoples applications better than the native platform.  And this was not only the cause of the ‘why bother’ with OS/2 native applications, but even today you can see it with RIM and their QNX based products that run Android applications.  Combine this with other low cost compilers from Borland and it really is no wonder why everyone was programming for Windows, esp the cost of Windows was typically cheaper than licensing a single seat for any DOS Extender that required royalties.  How much of this was due to Microsoft brilliance, or the competition being bent on short term greed, it is hard to say, but IBM wasn’t taking out full page ads trying to court developers with cheap access, but rather you had to phone them up, go through some IVR’s and be ready to charge a few thousand dollars for the honor of developing for OS/2.  I still remember Watcom C/C++ 10.0 being the cheapest way to build for everything, its a shame in a way that their SQL product was so good, as Sybase snapped up Watcom, and pretty much killed the languages, but thankfully not before open sourcing them.

The quest for the holy grail

With high resolution, and color depth displays, audio cards, multimedia games like “Monty Python’s quest for the holy grail” started to appear for Windows, as programmers could now concentrate on content, as Windows provided the layer for audio/video abstraction.  While some games worked great others did not as there was a performance gap from raw MS-DOS to Windows, but tech like WinG was closing the gap.  Not to mention the device driver patch hell was being shifted from the game devs to the hardware vendors, although that race still goes on, as even today Steam still combats older drivers and tries to hand hold users into updating them.

Even the horrible shell saw some competition for improvement, there was the Workplace shell for Windows 3.1, and of course BOB.  And boy were people so happy with BOB.  Not to mention thinking that this was just some great tech, it made its way into Office, to be forever remembered as Clippy in Office 97, who was tuned down in 2000 and killed in Office 2003.  Its funny how future looking movies always go on about these animated seemingly helpful digital assistants, and yet in the real world they usually are the first thing turned off.  I even remember the whole “Chrysler New Yorker’ debacle back in the day.  Even in the show room it just went endlessly on about the door being a jar.  Maybe its just HAL-9000 backlash.

So what can be said of Windows 3.1?  It still lingers in 32bit versions of Windows 7 (Wow! or Windows on windows), and it basically tipped the world into the Win-centric place we are today, along with the office everywhere mentality.  I can’t even imagine giving someone a 1-2-3 wks file, let alone a Word Perfect document, as I’m pretty sure there are no translators anymore. Oddly enough Win64 based OS’s can’t directly run Win16 based programs, there is always emulation.