PCjs Machines

Home of the original IBM PC emulator for browsers.


PCjs Blog

Improved support for PC AT machines

The 8Mhz IBM PC AT machine configuration now boots in PCjs v1.15.5, which includes the following fixes:

This PCjs release also fixes a problem reported by a user: if you disable localStorage support in your browser, previous versions of PCjs would fault. While every browser that supports PCjs also supports localStorage, I didn’t consider what might happen if a user decided to turn it off.

The only downside to turning off localStorage is that none of your PCjs machines will be able save/restore their state when you leave/return to the page; they will always reboot.

Browser’s don’t always refer to the localStorage feature by its actual name, either. For example, in Chrome, the setting that enables/disables localStorage is hidden under “Advanced Settings” => “Privacy” => “Content Settings” => “Cookies” => “Allow local data to be set (recommended)”. Which is somewhat misleading and a little annoying, because localStorage is not a cookie.

PCjs never sets any cookies. Cookies are bits of data that your browser saves and then automatically sends off to the server every time you make a request. localStorage is nothing more than local storage; it is not automatically sent anywhere. Granted, a JavaScript application could abuse it and send it out just like a cookie, but PCjs does not do that; the only exception is when PCjs detects a problem, and even then, you must first agree to submit your machine’s state as part of the bug report.

Jeff Parsons
Oct 17, 2014