Fixed an old annoying bug where a restored video card wouldn't properly display a blinking cursor; originally, I assumed it was a CRTC register restoration bug, but actually, some supporting variables (eg, cBlinks) were not getting initialized in both the reset() and restore() code paths. This is also a good time to remember that when an uninitialized array from some hardware state gets serialized and deserialized to/from JSON, the array is restored as a series of "null" values, not as "undefined" values, so it's best for any code checking for undefined values to use "== null" rather than "=== undefined".

This commit is contained in:
Jeff Parsons 2017-06-26 08:56:17 -07:00 committed by Jeff Parsons
commit ed75397b83
10 changed files with 58 additions and 36 deletions

View file

@ -1,3 +1,17 @@
---
layout: page
permalink: /
machines:
- id: ibm5150
type: pcx86
resume: 1
name: "IBM PC (Model 5150) with Monochrome Display"
config: /devices/pcx86/machine/5150/mda/64kb/machine.xml
- id: demoC1P
type: c1p
config: /devices/c1p/machine/8kb/large/machine.xml
---
PCjs Machines
=============
@ -14,7 +28,7 @@ All PCjs machine simulations are written entirely in [JavaScript](/modules/). N
required. Supported browsers include modern versions of Chrome, Safari, Firefox, Internet Explorer (v9.0 and up), Edge,
and assorted mobile browsers.
[Embedded IBM PC](/devices/pcx86/machine/5150/mda/64kb/ "PCx86:ibm5150")
{% include machine.html id="ibm5150" %}
The [JavaScript Machine](/devices/pcx86/machine/5150/mda/64kb/) above uses [PCx86](/docs/pcx86/) configured with an Intel
8088 running at 4.77Mhz, with 64Kb of RAM and an IBM Monochrome Display Adapter. For more control, there are also
@ -62,7 +76,7 @@ Below is the [OSI Challenger C1P](/docs/c1pjs/), another simulation in the PCjs
It simulates Ohio Scientific's 6502-based microcomputer, released in 1978. More details about this simulation
and the original machine are available in the [C1Pjs Documentation](/docs/c1pjs/).
[Embedded OSI Challenger C1P](/devices/c1p/machine/8kb/large/ "C1Pjs:demoC1P")
{% include machine.html id="demoC1P" %}
<!--BEGIN:EXCLUDE-->