More attempts to clean-up and reduce spurious alerts

This commit is contained in:
Jeff Parsons 2017-06-27 10:29:57 -07:00 committed by Jeff Parsons
commit 7a2fd2ac14
4 changed files with 63 additions and 48 deletions

View file

@ -22,6 +22,8 @@ You can also browse our collection of archived disks:
* [Challenger 1P Disk Library](/disks/c1p/)
* [DEC Disk Library](/disks/dec/)
{% include_relative pcx86/apps.md %}
---
### Software Application Manifests

View file

@ -4,52 +4,7 @@ title: IBM PC Application Demos
permalink: /apps/pcx86/
---
IBM PC Application Demos
------------------------
Below are selected [PCx86](/docs/about/pcx86/) demos of classic IBM PC applications. In many cases,
we've had to create our own "Demo Disks", because copies of the original distribution disks are difficult
to find, and in some cases (e.g., [Executive Suite](1982/esuite/)), the original disks were copy-protected,
so we've been forced to use a "cracked" copy of the software instead.
A list of all the software available to PCx86 machines can be found in the [IBM PC Disk Library](/disks/pcx86/).
### 1981
* [DONKEY.BAS](1981/donkey/)
* [Microsoft Adventure](/disks/pcx86/games/microsoft/adventure/)
* [VisiCalc](1981/visicalc/)
### 1982
* [Executive Suite](1982/esuite/)
* [RatBas v2.13](1982/ratbas/)
* [Zork I](/disks/pcx86/games/infocom/zork1/)
### 1983
* [Adventures in Math v1.00](1983/adventmath/)
* [Planetfall](/disks/pcx86/games/infocom/planet/)
* [SuperCalc2 v1.00](/disks/pcx86/apps/other/sc2/1.00/)
* [SuperCalc3 v1.00](/disks/pcx86/apps/other/sc3/1.00/)
* [Zork II](/disks/pcx86/games/infocom/zork2/)
* [Zork III](/disks/pcx86/games/infocom/zork3/)
### 1984
* [The Hitchhiker's Guide to the Galaxy](/disks/pcx86/games/infocom/hhiker/)
### 1985
* [Rogue](1985/rogue/)
### 1987
* [ThinkTank v2.14](1987/thinktank/)
### 1992
* [The Dungeons of Moria v5.5](1992/moria/)
{% include_relative apps.md %}
---

46
apps/pcx86/apps.md Normal file
View file

@ -0,0 +1,46 @@
IBM PC Application Demos
------------------------
Below are selected [PCx86](/docs/about/pcx86/) demos of classic IBM PC applications. In many cases,
we've had to create our own "Demo Disks", because copies of the original distribution disks are difficult
to find, and in some cases (e.g., [Executive Suite](/apps/pcx86/1982/esuite/)), the original disks were
copy-protected, so we've been forced to use a "cracked" copy of the software instead.
A list of all the software available to PCx86 machines can be found in the [IBM PC Disk Library](/disks/pcx86/).
### 1981
* [DONKEY.BAS](/apps/pcx86/1981/donkey/)
* [Microsoft Adventure](/disks/pcx86/games/microsoft/adventure/)
* [VisiCalc](/apps/pcx86/1981/visicalc/)
### 1982
* [Executive Suite](/apps/pcx86/1982/esuite/)
* [RatBas v2.13](/apps/pcx86/1982/ratbas/)
* [Zork I](/disks/pcx86/games/infocom/zork1/)
### 1983
* [Adventures in Math v1.00](/apps/pcx86/1983/adventmath/)
* [Planetfall](/disks/pcx86/games/infocom/planet/)
* [SuperCalc2 v1.00](/disks/pcx86/apps/other/sc2/1.00/)
* [SuperCalc3 v1.00](/disks/pcx86/apps/other/sc3/1.00/)
* [Zork II](/disks/pcx86/games/infocom/zork2/)
* [Zork III](/disks/pcx86/games/infocom/zork3/)
### 1984
* [The Hitchhiker's Guide to the Galaxy](/disks/pcx86/games/infocom/hhiker/)
### 1985
* [Rogue](/apps/pcx86/1985/rogue/)
### 1987
* [ThinkTank v2.14](/apps/pcx86/1987/thinktank/)
### 1992
* [The Dungeons of Moria v5.5](/apps/pcx86/1992/moria/)

View file

@ -538,7 +538,7 @@ class Computer extends Component {
this.stateFailSafe.store();
var fValidate = this.resume && !this.fServerState;
if (resume == Computer.RESUME_AUTO || Component.confirmUser("Click OK to restore the previous " + PCX86.APPNAME + " machine state, or CANCEL to reset the machine.")) {
if (resume == Computer.RESUME_AUTO || Component.confirmUser("Click OK to restore the previous " + PCX86.APPNAME + " machine state.")) {
fRestore = stateComputer.parse();
if (fRestore) {
var sCode = stateComputer.get(UserAPI.RES.CODE);
@ -810,6 +810,18 @@ class Computer extends Component {
/**
* powerReport(stateComputer)
*
* TODO: Ever since I migrated the PCjs website from a Node-based web server on AWS to a GitHub Pages-based site,
* the sendReport() API has been a bit-bucket. To be honest though, even before that change, I never really had
* the time (or desire) to look through all the anonymous machine states that were being posted. Most of them were
* probably due to the user switching away from a page before it finished loading anyway, leaving the machine in
* an incomplete state. That said, there should be SOME automated way for people to share their machine states
* when there's a more serious problem -- not this misleading prompt.
*
* In the meantime, to help reduce those kind of useless alerts, there's the new 'unloading' flag. However, I'm
* not sure how reliably that's being set, so additionally, the default 'resume' setting (RESUME_AUTO) tries to be
* MUCH more automatic now; this function, for example, shouldn't even be called now when RESUME_AUTO is in effect.
* Another 'resume' setting (eg, RESUME_PROMPT) must be selected instead.
*
* @this {Computer}
* @param {State} stateComputer
* @return {boolean}
@ -1364,7 +1376,7 @@ class Computer extends Component {
* I used to bypass the prompt if this.resume == Computer.RESUME_AUTO, setting fSave to true automatically,
* but that gives the user no means of resetting a resumable machine that contains errors in its resume state.
*/
var fSave = (/* this.resume == Computer.RESUME_AUTO || */ this.flags.unloading || Component.confirmUser("Click OK to save changes to this " + PCX86.APPNAME + " machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded."));
var fSave = (/* this.resume == Computer.RESUME_AUTO || */ this.flags.unloading || !Component.confirmUser("Click OK to reset this " + PCX86.APPNAME + " machine and discard all disk modifications."));
this.powerOff(fSave, true);
/*
* Forcing the page to reload is an expedient option, but ugly. It's preferable to call powerOn()