Run Windows 1.01 in your browser
jsmachines.net
jsmachines.net
Mac System 7 Demo: http://jamesfriend.com.au/pce-js/
Windows 3.0 Demo: http://jamesfriend.com.au/pce-js/ibmpc-win/
IBM PC doesn't have mouse support... Yet. For Mac OS it's writing the mouse position directly into memory, but I've yet to add that hack for Windows.
You really shouldn't see a crash on a fresh install of the operating system. A lot of crashes on Mac OS Classic were caused by software that hooked itself deeply into the system and corrupted state. Not so different from Windows, actually ...
As software became ever more complex in the 9.x era, Option-OpenApple-Reset became as familiar as Ctrl-Alt-Delete.
And this makes me wonder about the Wayback machine. I can retrieve an old web page, but can I recreate the experience of posting to that site? Is anyone archiving the various social network sites code, so that the Future People can recreate the experience of Friendster or Facebook or Myspace? Or are the Future People going to have to guess by looking at screenshots and videos?
One of the first (perhaps the first?) commercial games for Windows was "Balance of Power". I think it either came with a weird runtime version of Win 1.0, or a voucher to get it, for people running dos.
The Windows port of Microsoft Excel also initially came bundled with a Windows runtime. It wasn't really until Windows 3.0 that you could start take Windows as a prereq. Before then, very few systems had Windows installed.
Wait a minute. "Windows Runtime" has a different meaning nowadays. Microsoft is really reusing a lot of its existing trademarks for Windows 8, isn't it? "Surface" was also a trademark that they already owned, for a giant touchscreen table.
Tag of the future
What I might coin the "cloud tag".
Can someone explain to me and any other run-of-the-mill hackers reading this, how an emulator like this is made?
I wouldn't even know where to start.
You pick a sufficiently low-level abstraction layer and implement it in Javascript. Everything above that layer 'just works'TM.
Do you really need to put the guy down for honestly admitting ignorance and trying to learn?
Anyway, "hacking" and computer science in general is diverse enough now that I wouldn't expect even an expert in any particular subfield to necessarily know anything about another. It's quite possible to be, say, an experienced database guru with a solid working knowledge of raytracing, network administration, and Unicode, without ever having touched anything related to emulators.
What I'm about to say probably sounds a lot like something that somebody who lacks impressive technical prowess (like myself, self-admittedly) would say, but I think that being a "hacker" is almost more of a mindset. Or, alternatively, there is a hacker mindset, and a lot of the folks here can identify with, and exhibit, that mindset. Specifically, the hacker mindset means that you're always curious, always learning, always improving, just like the poster who asked the question above.
From there its just the everday craziness of emulation. Emulating the instruction set, the IO devices, etc.
You also want to keep your options open, to prevent being forced into taking the wrong piece near the edge or corners.
A simple strategy that works against this version relatively often is to at the start look for positions that will take some of the opponents pieces while ideally increasing your possible moves, while being as far from the edges as possible. Then when you are forced to put a piece near the edges, put it near the centre of an edge (as far from corners as possible).
By then the options will be so constrained you can start looking a at consequences of each option, with the goal being to avoid putting pieces near the corners.
I'm not a particularly good player, and I got 3 out of 4 corners on my first attempt by just relatively haphazardly following the above, which means the default settings and/or overall strength of this version is pretty weak.
It defaults to Beginner. Use the "Skill" menu to change it to Master. It'll be much more challenging, and the AI will take a lot longer to calculate its move.
(Remember: This is Windows 1.01, so you have to hold down the mouse button to use pull-down menus.)
The true Windows 1.01 experience.
C:
CD windows
winEMACS, of course, never lost it.
And it appears to save your state between runs, which is nice.
1. Zork
2. running in the Infocom Virtual Machine
3. running in an IBM PC emulator
4. running in Javascript
6. running in x86 machine code
and x86 maintains backwards compatibility with that original IBM PC through
7. hardware instruction set translation
It's nice to know all those transistors aren't sitting idle.
Though the status line doesn't work... I should fix that.
And if you like Zork, try these modern classics:
Lost pig: http://iplayif.com/?story=http://mirror.ifarchive.org/if-arc...
Spider and Web: http://iplayif.com/?story=http://mirror.ifarchive.org/if-arc...
As a hack, all of these JavaScript emulators are awesome to play with. But in reality if you need performance for something in the past decade, like a N64 or newer arcade emulators, JS is still orders of magnitude slower than dynarec emulators written in C. I hope something like PNaCl will come along to bridge the performance gap.
JavaScript is a toy language. But I do agree that strong typing and restrictions on GC like asm.js would help the situation. Unfortunately we can't rely on the standards bodies to make good decisions. Static typing was supposed to be in ECMAScript 4 back in 2008, but they abandoned it back in 2007.
It's still painfully clear to me the we are going backwards with all of these bloated poorly designed layers in HTML5 and I have little faith in the standards bodies.
http://archive.vg/blog/12-feature/114-a-big-list-of-browser-...
It's funny how when I closed Windows and ended on the DOS prompt I mindlessly typed "win" & enter. Some habits never die I guess.
This trend of retro computing is a wonderful trend.
QBasic didn't come until MS-DOS 5, the demo uses MS-DOS 2.
Actually, the demo is PC-DOS 2.0, not MS-DOS 2.0. Notice the disk that's in the emulator's drive. Also, IBM replaced all of Microsoft's copyright notices:
The IBM Personal Computer DOS
Version 2.00 (C)Copyright IBM Corp 1981, 1982 1983
If they're using real disk images, then they must have an actual IBM ROM BASIC in the emulator. PC-DOS BASIC(A) would only run on a true-blue IBM machine, because it called into the ROM BASIC. In contrast, MS-DOS BASIC(A) was implemented entirely in software and would run on any clone.