7 ms·
PCjs Machines
- wila 8y agoStill amazing. What is also awesome is that after it boots DOS on that page that the CPU utilisation by my browser is pretty much zero.
- chrisseaton 8y ago> after it boots DOS on that page that the CPU utilisation by my browser is pretty much zero Presumably the processor is waiting for an interrupt, so there’s nothing for the emulator to do, so nothing for the browser to do. That’s normal for an operating system, an emulator, and JavaScript.
- userbinator 8y agoI'm guessing (didn't try) it could be a slightly patched version that does actually halt the CPU when it has nothing to do, since DOS is well known for using up all the host CPU when run in a VM even when idle and leading to people writing utilities like this: http://maribu.home.xs4all.nl/zeurkous/download/mirror/dosidle.html http://maribu.home.xs4all.nl/zeurkous/download/mirror/dosidl... I also found this (somewhat amusing) page discussing the problem: http://wiki.freedos.org/wiki/index.php/VirtualBox_-_Heat http://wiki.freedos.org/wiki/index.php/VirtualBox_-_Heat The "Running the CPU at 100 percent for too long can damage your computer." message is probably legal ass-covering, since any system that can't 100% CPU usage 24/7 is defective. Indeed, back when DOS was common, that's what it did to the CPUs of the time, as did other applications which used a polling loop instead of waiting for interrupts.
- coldtea 8y ago>That’s normal for an operating system, an emulator, and JavaScript. But apparently not for Electron apps...
- orbital-decay 8y agoThat's normal for a full-featured OS, not for a single-tasking OS like MS-DOS. Additionally, x86 HLT instruction was quite obscure before the 80486 (IIRC).
- wila 8y agoAh.. it sounds logical yes. But not for DOS where the CPU was not waiting, but instead just burning CPU cycles. Try running DOS in any VM and you'll be shocked by the CPU usage. A constant 100% until you install a little program called DOSIDLE that properly runs a HLT instruction when the CPU is waiting.
- jdsully 8y agoMust be a patch. DOS didn’t use HLT until version 6 - it just spun instead. https://blogs.msdn.microsoft.com/virtual_pc_guy/2004/12/20/why-does-dos-use-100-cpu-under-virtual-pc/ https://blogs.msdn.microsoft.com/virtual_pc_guy/2004/12/20/w...
- thefounder 8y agoAny reason why is not compiled to WebAssembly?
- detaro 8y agoIt's written in JS, not compiled to JS. WASM isn't a good target to compile JS to, and there's little point in doing so.
- entropicdrifter 8y agoSo what you're saying is we need to rewrite it in Rust, then compile it to WASM, then compile an ASM.js backup as well? /s
- thefounder 8y agoNow all the browsers support wasm so you don't need to compile it to asm.js. You may use any language if you don't like Rust.
- ilaksh 8y agoI think the reason they did not do that is because it's a JavaScript project and they didn't want to rewrite it in C or another language since there are already lots of emulators in C. But it could be faster if it was compiled to wasm.
- deleted 8y ago[deleted]
- diszd 8y agoThe emulated screen is too big for my screen and there doesn't seem to be a way of making it smaller (zoom doesn't work either).
- sh4z 8y agoThe screen is html. Find the div with id ibm5150.videoMDA in chrome/firefox devtools and edit the width. Aspect ratio is kept.
- mrighele 8y agoOr simply resize the width of the browser window until you can see everything. Half of the screen seems to be fine.
- bazzargh 8y agoSince the problem is the aspect ratio, I just turned on the dev tools sidebar, so the content area is now taller than it is wide, that worked.
- santialbo 8y agoThere's a really high pitch sound when the emulator starts that hurt my ears (was wearing earphones with high volume). Beware.
- inertiatic 8y agoWish I've read the comments before opening the link.
- jessaustin 8y agoThis didn't happen for me, chrome on Linux. I was listening to Jimmy Dore in another tab, and there was no high-pitched sound.
- danesparza 8y agoThat's the true-to-life sound of the monochrome monitor. Bonus points for added realism!
- pmarin 8y agoWe used to call it the “beep” :)
- entropicdrifter 8y agoYeah, but back in the day you didn't run the raw square wave signal into your headphones. Even if you used headphones the beep would go to the speaker either in the chassis or in the monitor
- schappim 8y agoI find it amazing that I can run Win95 fast in a browser on my phone. I remember when my computer chugged trying to 95 after upgrading from 3.1!
- AnIdiotOnTheNet 8y agoAn entire OS, which can still perform most of the tasks we ask of computers today, runs fast in a virtual machine on a device designed with a power budget in mind. Yet many apps that do basically just one of those tasks, and run natively, run slower and take up more disk space and memory. That's progress.
- dak1 8y agoWrith's Law: Software gets slower more rapidly than hardware becomes faster.[1] [1] https://en.wikipedia.org/wiki/Wirth%27s_law https://en.wikipedia.org/wiki/Wirth%27s_law
- jsight 8y agoI've always felt like this effect is just perception. LibreOffice Writer starts in a couple of seconds on my current laptop, for example. I remember when Word took a few multiples of that in the past. And browsers now feel slow if they don't respond perfectly to touch input on my tablet. We used to tolerate much slower response times.
- foobarbecue 8y agoApples to oranges. Word is still slow.
- wongarsu 8y agoA lot of this is down to UX, or rather expectation management. If I click on something and nothing at all happens for 0.8 seconds until the UI updates with the task done, the app feels incredibly slow and laggy. If I click on something, a progress indicator opens immedietly and updates a real progress bar every 0.2 seconds until the task is done 10 seconds later the app feels fast and snappy. The second app took more than ten times longer, but it never left me doubting if it even noticed my click and how long I have to wait. That makes a world of difference. 90s era software was written in the expectation that the computer is slow, and having progress indicators on screen or in the status bar for a lot of tasks was common (and if that was too much work at least the cursor was updated instantly to show that work is done). Today most software is written in the expectation that everything works instantly, and if it doesn't the user experience falls apart quickly.
- DennisP 8y agoIs there a way to make this go full screen? It'd be so much fun to turn my entire macbook screen into an IBM green character screen, and immerse myself in BASICA programming like the old days. I realize aspect ratio could be a problem and I'm willing to put up with some black on either side.
- martin1b 8y agoThis is incredible! Now we need an OS2 image.
- deleted 8y ago[deleted]
- kaypro 8y agoThis is fantastic. I got teary eyed running VB and actually making an Application. What a flood of wonderful nostalgic memories. Well done.
- deleted 8y ago[deleted]
- jandrese 8y agoI can't get most of the disk images to load. It claims the images are too big. Or do I need to use a different DOS with HD disk support? Bit of chicken and egg since the more recent DOS images are on big disks, and usually more than one.
- dahart 8y agoI keep seeing "PCjr Machines". It's actually close to what this is, using the console is bringing back memories of my first programs in basica! I poked around a bit, this doesn't support an actual PCjr does it (with colors & polyphonic sound)?
- teknopurge 8y agothis is awesome.
- omoikane 8y agoThe page claims to be "the original IBM PC simulation that runs in your web browser", but I think jslinux* predates this project. How do they compare? * https://news.ycombinator.com/item?id=2555349 https://news.ycombinator.com/item?id=2555349
- entropicdrifter 8y agoIf I had to guess, I would say the claim is about running IBM DOS in a browser, as opposed to Linux.
- keyle 8y agoWow. I can't believe the amount of hours I spent on computers back in the day, even though they were so incapable and boring compared to today. It's as if I've never liked people.