diff --git a/apps/pc/1981/visicalc/manifest.xml b/apps/pc/1981/visicalc/manifest.xml index 9eaf5362c..7c0e9ebc3 100644 --- a/apps/pc/1981/visicalc/manifest.xml +++ b/apps/pc/1981/visicalc/manifest.xml @@ -1,5 +1,5 @@ - + VisiCalc diff --git a/apps/pc/1982/esuite/manifest.xml b/apps/pc/1982/esuite/manifest.xml index f3a75b5ad..08b320cde 100644 --- a/apps/pc/1982/esuite/manifest.xml +++ b/apps/pc/1982/esuite/manifest.xml @@ -1,5 +1,5 @@ - + Executive Suite diff --git a/apps/pc/1985/rogue/manifest.xml b/apps/pc/1985/rogue/manifest.xml index 4b62a67df..2ecc7dc1a 100644 --- a/apps/pc/1985/rogue/manifest.xml +++ b/apps/pc/1985/rogue/manifest.xml @@ -1,5 +1,5 @@ - + Rogue diff --git a/apps/pc/1987/thinktank/manifest.xml b/apps/pc/1987/thinktank/manifest.xml index 9bfde4297..e15133d51 100644 --- a/apps/pc/1987/thinktank/manifest.xml +++ b/apps/pc/1987/thinktank/manifest.xml @@ -1,5 +1,5 @@ - + ThinkTank 2.41NP diff --git a/apps/pc/1988/moria/manifest.xml b/apps/pc/1988/moria/manifest.xml index 926df4414..b18439bc2 100644 --- a/apps/pc/1988/moria/manifest.xml +++ b/apps/pc/1988/moria/manifest.xml @@ -1,5 +1,5 @@ - + The Dungeons of Moria 4.872 diff --git a/apps/pc/1992/moria/manifest.xml b/apps/pc/1992/moria/manifest.xml index 58939c6bf..c766a5b53 100644 --- a/apps/pc/1992/moria/manifest.xml +++ b/apps/pc/1992/moria/manifest.xml @@ -1,5 +1,5 @@ - + The Dungeons of Moria 5.5 diff --git a/blog/2015/03/26/README.md b/blog/2015/03/26/README.md index 3714c2dcf..b98c065d0 100644 --- a/blog/2015/03/26/README.md +++ b/blog/2015/03/26/README.md @@ -6,11 +6,11 @@ Also, see my previous posts on [PCjs Coding Conventions](/blog/2014/09/30/) and ### Strict Equality -Most sites will advise you to *never* use the "==" and "!=" JavaScript operators, because when they compare variables -containing different data types, JavaScript will coerce one of the operands to a matching type, sometimes in unexpected -ways. We can thank the early days of JavaScript for this feature, when it was trying to be extraordinarily forgiving -of sloppy code. I'm not going to list all the odd results that can arise from JavaScript's operand coercion, because -there are more than enough examples on the web already. +Many JavaScript websites will advise you to *never* use the "==" and "!=" JavaScript operators, because when they compare +variables containing different data types, JavaScript will coerce one of the operands to a matching type, sometimes in +unexpected ways. We can thank the early days of JavaScript for this feature, when it was trying to be extraordinarily +forgiving of sloppy code. I'm not going to list all the odd results that can arise from JavaScript's operand coercion, +because there are more than enough examples on the web already. To avoid unexpected type coercion, and thus unexpected matches and/or mismatches, the usual advice is to *always* use strict equality operators ("===" and "!=="). @@ -18,9 +18,9 @@ strict equality operators ("===" and "!=="). I disagree. In well-written code, the variable data types should always be clear. In fact, the more you're able to -use JSDoc types to declare the data types of all your parameters, return values, and other variables, the fewer errors -you'll have. As long as you're always comparing variables with matching types, there shouldn't be any unexpected -coercions. +use [JSDoc](http://developers.google.com/closure/compiler/docs/js-for-compiler) types to declare the data types +of all your parameters, return values, and other variables, the fewer errors you'll have. As long as you're always +comparing variables with matching types, there shouldn't be any unexpected coercions. Obviously, there will be times when a polymorphic variable is required, especially when dealing with APIs that can return multiple types. But those should be the exception, not the rule. @@ -35,18 +35,30 @@ whereas strict equality requires more work: if (parameter === undefined || parameter === null) { ... } -This is one of those times when coercion (of *undefined* to *null*) is beneficial. Here's another: +This is one of those times when coercion (of *undefined* to *null*), and the use of "non-strict" operators, is beneficial. +Here's another: if (!b) { ... } Coercing a value to *boolean* is a popular way of checking for all "falsy" values (ie, *undefined*, *null*, -0, false, "", NaN, etc). Again, another situation where type coercion is beneficial and well understood. +0, false, "", NaN, etc). It is shorthand for: -However, don't use that technique to check for optional parameters: + if (b == false) { ... } + +yet I suspect the proponents of strict equality would embrace the former while rejecting the latter. + +However, I don't recommend "falsy" checks for optional parameters: if (!parameter) { ... } -if a valid numeric parameter could include 0, or a valid string parameter could include "", etc. +because often a valid numeric parameter might include 0, or a valid string parameter might include "", so it's better +to do this: + + if (parameter == null) { ... } + +and obviously if *null* is also a acceptable value, then you should definitely use strict equality: + + if (parameter === undefined) { ... } Problems with type coercion are **NOT** problems caused by a poor choice of operators, so trying to make those problems go away by artificially limiting your choice of operators seems like the wrong solution. @@ -54,7 +66,7 @@ Type coercion problems are, by definition, problems involving mismatched types. - Avoid comparing variables of different types; or - Convert your variables to matching types first; or -- Rely on coercion, but be clear about why and when you're doing it +- Use strict equality operators (just don't use them mindlessly) Explicitly convert variables to a single type whenever possible. For example, I might define a method that accepts an optional numeric parameter, with a documented default value when it's omitted. I think it's @@ -83,8 +95,8 @@ When using *for*...*in* loops like this: var a = [100, 200, 300]; for (var i in a) { ... } -the type of variable *i* will be **string** rather than **number**; that is, it will contain "0", "1" and "2" rather -than 0, 1 and 2. If you then use *i* to set a matching element in another array, that element will not be stored in +the type of variable *i* will be **string** rather than **number**; that is, it will contain "0", "1", and "2" rather +than 0, 1, and 2. If you then use *i* to set a matching element in another array, that element will not be stored in the same (numeric) position as the original array. One solution is to convert *i* to a **number**: @@ -111,8 +123,8 @@ any conversion; eg: "0x41": 'A' }; -Numeric properties can safely be converted from strings to numbers using the unary "+" operator, regardless whether -they were quoted or not. +Numeric properties can always be safely converted using the unary "+" operator, regardless whether they were quoted +or not. The unary "+" is a great alternative to parseInt(), but be mindful of their differences. One important difference is that parseInt() will stop when it encounters an invalid digit, returning whatever value was parsed up to that point, @@ -127,7 +139,7 @@ you'd expect. For example: n >>>= 33; will shift n by only *one* bit, not 33 bits, and the result will be 0x08000000, not zero. This is because, -just like the shift instructions on Intel processors, JavaScript converts the shift count to a *mod 32* value +just like the shift instructions on 32-bit Intel processors, JavaScript converts the shift count to a *mod 32* value (in other words, it truncates the shift count to a 5-bit value). So the above example is equivalent to: @@ -147,9 +159,6 @@ Also, it's not quite correct to say that a shift count of zero has *no* effect o It's true that the bottom 32 bits of the number were not changed, but a side-effect of the unsigned shift operator is that all the upper sign bits are stripped from the (64-bit) result. -I consider this an anomaly of JavaScript's bitwise operators, because it breaks the "rule" that bitwise operators -operate *only* on the low 32 bits of a number; there are side-effects on the upper 32 bits as well. - Similarly, as soon as you perform any other bitwise operation on the number, even one that does not modify the low 32 bits, the upper bits will revert to the sign of the lower 32-bit value: diff --git a/devices/c1p/machine/32kb/machine.xml b/devices/c1p/machine/32kb/machine.xml index fc164f91d..de950e38a 100644 --- a/devices/c1p/machine/32kb/machine.xml +++ b/devices/c1p/machine/32kb/machine.xml @@ -1,5 +1,5 @@ - + OSI Challenger 1P (32Kb) with Disk Support diff --git a/devices/c1p/machine/8kb/all/debugger/machine.xml b/devices/c1p/machine/8kb/all/debugger/machine.xml index db571bf9d..447a2d2e1 100644 --- a/devices/c1p/machine/8kb/all/debugger/machine.xml +++ b/devices/c1p/machine/8kb/all/debugger/machine.xml @@ -1,5 +1,5 @@ - + OSI Challenger 1P (8Kb, More Programs) diff --git a/devices/c1p/machine/8kb/array/machine.xml b/devices/c1p/machine/8kb/array/machine.xml index d04552dfc..5a5279fe6 100644 --- a/devices/c1p/machine/8kb/array/machine.xml +++ b/devices/c1p/machine/8kb/array/machine.xml @@ -1,5 +1,5 @@ - + Challenger 1P (8Kb) "Server Array" diff --git a/devices/c1p/machine/8kb/large/debugger/machine.xml b/devices/c1p/machine/8kb/large/debugger/machine.xml index b26fa0edf..e2446c285 100644 --- a/devices/c1p/machine/8kb/large/debugger/machine.xml +++ b/devices/c1p/machine/8kb/large/debugger/machine.xml @@ -1,5 +1,5 @@ - + OSI Challenger 1P (8Kb) with Debugger diff --git a/devices/c1p/machine/8kb/large/machine.xml b/devices/c1p/machine/8kb/large/machine.xml index f7684fb88..af69a77bb 100644 --- a/devices/c1p/machine/8kb/large/machine.xml +++ b/devices/c1p/machine/8kb/large/machine.xml @@ -1,5 +1,5 @@ - + OSI Challenger 1P (circa 1978) diff --git a/devices/c1p/machine/8kb/small/machine.xml b/devices/c1p/machine/8kb/small/machine.xml index 42ff050bd..dd8d83539 100644 --- a/devices/c1p/machine/8kb/small/machine.xml +++ b/devices/c1p/machine/8kb/small/machine.xml @@ -1,5 +1,5 @@ - + diff --git a/devices/pc/machine/5150/cga/384kb/softkbd/machine.xml b/devices/pc/machine/5150/cga/384kb/softkbd/machine.xml index 38d344b60..66f7400ce 100644 --- a/devices/pc/machine/5150/cga/384kb/softkbd/machine.xml +++ b/devices/pc/machine/5150/cga/384kb/softkbd/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150), CGA, 384K diff --git a/devices/pc/machine/5150/cga/64kb/donkey/debugger/machine.xml b/devices/pc/machine/5150/cga/64kb/donkey/debugger/machine.xml index a56fedb08..85ea5e593 100644 --- a/devices/pc/machine/5150/cga/64kb/donkey/debugger/machine.xml +++ b/devices/pc/machine/5150/cga/64kb/donkey/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150), CGA, 64K diff --git a/devices/pc/machine/5150/cga/64kb/donkey/machine.xml b/devices/pc/machine/5150/cga/64kb/donkey/machine.xml index 41e76e789..07cd6ca96 100644 --- a/devices/pc/machine/5150/cga/64kb/donkey/machine.xml +++ b/devices/pc/machine/5150/cga/64kb/donkey/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150), CGA, 64K diff --git a/devices/pc/machine/5150/cga/64kb/softkbd/machine.xml b/devices/pc/machine/5150/cga/64kb/softkbd/machine.xml index 5d66e4d74..b42055598 100644 --- a/devices/pc/machine/5150/cga/64kb/softkbd/machine.xml +++ b/devices/pc/machine/5150/cga/64kb/softkbd/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150), CGA, 64K diff --git a/devices/pc/machine/5150/mda/64kb/debugger/machine.xml b/devices/pc/machine/5150/mda/64kb/debugger/machine.xml index d9b22441c..fa2cd6005 100644 --- a/devices/pc/machine/5150/mda/64kb/debugger/machine.xml +++ b/devices/pc/machine/5150/mda/64kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC Model 5150 with Monochrome Display diff --git a/devices/pc/machine/5150/mda/64kb/machine.xml b/devices/pc/machine/5150/mda/64kb/machine.xml index 9457758ed..fd8a25dad 100644 --- a/devices/pc/machine/5150/mda/64kb/machine.xml +++ b/devices/pc/machine/5150/mda/64kb/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150) with Monochrome Display diff --git a/devices/pc/machine/5150/mda/64kb/softkbd/machine.xml b/devices/pc/machine/5150/mda/64kb/softkbd/machine.xml index 9cd66176d..78e8dc33c 100644 --- a/devices/pc/machine/5150/mda/64kb/softkbd/machine.xml +++ b/devices/pc/machine/5150/mda/64kb/softkbd/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150), MDA, 64K diff --git a/devices/pc/machine/5160/cga/256kb/array/machine.xml b/devices/pc/machine/5160/cga/256kb/array/machine.xml index 4ea886819..8ac0a2c81 100644 --- a/devices/pc/machine/5160/cga/256kb/array/machine.xml +++ b/devices/pc/machine/5160/cga/256kb/array/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 256K, 10Mb Drive diff --git a/devices/pc/machine/5160/cga/256kb/demo/debugger/machine.xml b/devices/pc/machine/5160/cga/256kb/demo/debugger/machine.xml index 38a98c9a5..9e966329f 100644 --- a/devices/pc/machine/5160/cga/256kb/demo/debugger/machine.xml +++ b/devices/pc/machine/5160/cga/256kb/demo/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 256Kb, 10Mb Drive diff --git a/devices/pc/machine/5160/cga/256kb/demo/machine.xml b/devices/pc/machine/5160/cga/256kb/demo/machine.xml index b9ba3d529..19fe4434b 100644 --- a/devices/pc/machine/5160/cga/256kb/demo/machine.xml +++ b/devices/pc/machine/5160/cga/256kb/demo/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 256Kb, 10Mb Drive diff --git a/devices/pc/machine/5160/cga/256kb/softkbd/machine.xml b/devices/pc/machine/5160/cga/256kb/softkbd/machine.xml index 103ee3ac6..46acfdc5e 100644 --- a/devices/pc/machine/5160/cga/256kb/softkbd/machine.xml +++ b/devices/pc/machine/5160/cga/256kb/softkbd/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 256K, 10Mb Drive diff --git a/devices/pc/machine/5160/cga/256kb/win101/debugger/machine.xml b/devices/pc/machine/5160/cga/256kb/win101/debugger/machine.xml index e46a13d21..42d1b3b28 100644 --- a/devices/pc/machine/5160/cga/256kb/win101/debugger/machine.xml +++ b/devices/pc/machine/5160/cga/256kb/win101/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160) running Windows v1.01 diff --git a/devices/pc/machine/5160/cga/256kb/win101/machine.xml b/devices/pc/machine/5160/cga/256kb/win101/machine.xml index 92cbbe882..e2c39ef4d 100644 --- a/devices/pc/machine/5160/cga/256kb/win101/machine.xml +++ b/devices/pc/machine/5160/cga/256kb/win101/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160) running Windows v1.01 diff --git a/devices/pc/machine/5160/cga/256kb/win101/softkbd/machine.xml b/devices/pc/machine/5160/cga/256kb/win101/softkbd/machine.xml index dd8fc42bc..f4525065e 100644 --- a/devices/pc/machine/5160/cga/256kb/win101/softkbd/machine.xml +++ b/devices/pc/machine/5160/cga/256kb/win101/softkbd/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 256K, WIN101 diff --git a/devices/pc/machine/5160/cga/512kb/win101/softkbd/machine.xml b/devices/pc/machine/5160/cga/512kb/win101/softkbd/machine.xml index c58f06f17..bd61f9660 100644 --- a/devices/pc/machine/5160/cga/512kb/win101/softkbd/machine.xml +++ b/devices/pc/machine/5160/cga/512kb/win101/softkbd/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 512K, WIN101 diff --git a/devices/pc/machine/5160/cga/640kb/debugger/machine.xml b/devices/pc/machine/5160/cga/640kb/debugger/machine.xml index a16b87367..25de0d341 100644 --- a/devices/pc/machine/5160/cga/640kb/debugger/machine.xml +++ b/devices/pc/machine/5160/cga/640kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 640K, 10Mb Drive diff --git a/devices/pc/machine/5160/cga/640kb/dos400m/machine.xml b/devices/pc/machine/5160/cga/640kb/dos400m/machine.xml index 70447a218..bbbb7c164 100644 --- a/devices/pc/machine/5160/cga/640kb/dos400m/machine.xml +++ b/devices/pc/machine/5160/cga/640kb/dos400m/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 640K, 10Mb Drive diff --git a/devices/pc/machine/5160/cga/640kb/machine.xml b/devices/pc/machine/5160/cga/640kb/machine.xml index 0044698fa..7ed8c9f59 100644 --- a/devices/pc/machine/5160/cga/640kb/machine.xml +++ b/devices/pc/machine/5160/cga/640kb/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 640K, 10Mb Drive diff --git a/devices/pc/machine/5160/ega/256kb/debugger/machine.xml b/devices/pc/machine/5160/ega/256kb/debugger/machine.xml index 957e34adc..5225d7011 100644 --- a/devices/pc/machine/5160/ega/256kb/debugger/machine.xml +++ b/devices/pc/machine/5160/ega/256kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), 64K EGA, 256K RAM, 10Mb Hard Drive diff --git a/devices/pc/machine/5160/ega/640kb/array/machine.xml b/devices/pc/machine/5160/ega/640kb/array/machine.xml index a4566026d..85bdde9ef 100644 --- a/devices/pc/machine/5160/ega/640kb/array/machine.xml +++ b/devices/pc/machine/5160/ega/640kb/array/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT, 128K EGA, 640K RAM, 10Mb Hard Drive diff --git a/devices/pc/machine/5160/ega/640kb/debugger/machine.xml b/devices/pc/machine/5160/ega/640kb/debugger/machine.xml index afe7073b0..1592c7850 100644 --- a/devices/pc/machine/5160/ega/640kb/debugger/machine.xml +++ b/devices/pc/machine/5160/ega/640kb/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT, 128K EGA, 640K RAM, 10Mb Hard Drive diff --git a/devices/pc/machine/5160/ega/640kb/machine.xml b/devices/pc/machine/5160/ega/640kb/machine.xml index b08e131e2..83a15afb7 100644 --- a/devices/pc/machine/5160/ega/640kb/machine.xml +++ b/devices/pc/machine/5160/ega/640kb/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT, 128K EGA, 640K RAM, 10Mb Hard Drive diff --git a/devices/pc/machine/5160/ega/640kb/win101/debugger/machine.xml b/devices/pc/machine/5160/ega/640kb/win101/debugger/machine.xml index 4947ee88f..3fd33d0a8 100644 --- a/devices/pc/machine/5160/ega/640kb/win101/debugger/machine.xml +++ b/devices/pc/machine/5160/ega/640kb/win101/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT, 128K EGA, 640K RAM, 10Mb Hard Drive diff --git a/devices/pc/machine/5160/ega/640kb/win101/machine.xml b/devices/pc/machine/5160/ega/640kb/win101/machine.xml index 896142478..0a9483b20 100644 --- a/devices/pc/machine/5160/ega/640kb/win101/machine.xml +++ b/devices/pc/machine/5160/ega/640kb/win101/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT, 128K EGA, 640K RAM, 10Mb Hard Drive diff --git a/devices/pc/machine/5160/mda/256kb/fake188/debugger/machine.xml b/devices/pc/machine/5160/mda/256kb/fake188/debugger/machine.xml index a3425cfbc..86d8c5249 100644 --- a/devices/pc/machine/5160/mda/256kb/fake188/debugger/machine.xml +++ b/devices/pc/machine/5160/mda/256kb/fake188/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), MDA, 256Kb, 10Mb Drive diff --git a/devices/pc/machine/5160/mda/256kb/fake188/machine.xml b/devices/pc/machine/5160/mda/256kb/fake188/machine.xml index f4e5aab13..aa2609109 100644 --- a/devices/pc/machine/5160/mda/256kb/fake188/machine.xml +++ b/devices/pc/machine/5160/mda/256kb/fake188/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), MDA, 256Kb, 10Mb Drive diff --git a/devices/pc/machine/5160/mda/256kb/machine.xml b/devices/pc/machine/5160/mda/256kb/machine.xml index 858c5019d..fc6ab664b 100644 --- a/devices/pc/machine/5160/mda/256kb/machine.xml +++ b/devices/pc/machine/5160/mda/256kb/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), MDA, 256Kb, 10Mb Drive diff --git a/devices/pc/machine/5160/mda/64kb/softkbd/machine.xml b/devices/pc/machine/5160/mda/64kb/softkbd/machine.xml index e6735151c..67268f177 100644 --- a/devices/pc/machine/5160/mda/64kb/softkbd/machine.xml +++ b/devices/pc/machine/5160/mda/64kb/softkbd/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), MDA, 64K, 10Mb Drive diff --git a/devices/pc/machine/5170/ega/1152kb/rev1/machine.xml b/devices/pc/machine/5170/ega/1152kb/rev1/machine.xml index 3c036da3b..608cc6557 100644 --- a/devices/pc/machine/5170/ega/1152kb/rev1/machine.xml +++ b/devices/pc/machine/5170/ega/1152kb/rev1/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (6Mhz), 128Kb EGA, 1152Kb RAM, 20Mb Hard Disk diff --git a/devices/pc/machine/5170/ega/1152kb/rev3/backtrack/machine.xml b/devices/pc/machine/5170/ega/1152kb/rev3/backtrack/machine.xml index c3e402b4e..3a8fb26ad 100644 --- a/devices/pc/machine/5170/ega/1152kb/rev3/backtrack/machine.xml +++ b/devices/pc/machine/5170/ega/1152kb/rev3/backtrack/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (8Mhz), 128Kb EGA, 1152Kb RAM, 20Mb Hard Disk diff --git a/devices/pc/machine/5170/ega/1152kb/rev3/machine.xml b/devices/pc/machine/5170/ega/1152kb/rev3/machine.xml index 7613bd4ef..a712ad0f0 100644 --- a/devices/pc/machine/5170/ega/1152kb/rev3/machine.xml +++ b/devices/pc/machine/5170/ega/1152kb/rev3/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (8Mhz), 128Kb EGA, 1152Kb RAM, 20Mb Hard Disk diff --git a/devices/pc/machine/5170/ega/640kb/rev1/machine.xml b/devices/pc/machine/5170/ega/640kb/rev1/machine.xml index d1c4dd4b2..3edd4ea10 100644 --- a/devices/pc/machine/5170/ega/640kb/rev1/machine.xml +++ b/devices/pc/machine/5170/ega/640kb/rev1/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT, 128K EGA, 640K RAM diff --git a/devices/pc/machine/5170/ega/640kb/rev1/manifest.xml b/devices/pc/machine/5170/ega/640kb/rev1/manifest.xml index f82237020..e3951423c 100644 --- a/devices/pc/machine/5170/ega/640kb/rev1/manifest.xml +++ b/devices/pc/machine/5170/ega/640kb/rev1/manifest.xml @@ -1,5 +1,5 @@ - + IBM PC AT References diff --git a/devices/pc/machine/compaq/deskpro386/ega/2048kb/machine.xml b/devices/pc/machine/compaq/deskpro386/ega/2048kb/machine.xml index 475a14f72..7c8990ac5 100644 --- a/devices/pc/machine/compaq/deskpro386/ega/2048kb/machine.xml +++ b/devices/pc/machine/compaq/deskpro386/ega/2048kb/machine.xml @@ -1,5 +1,5 @@ - + diff --git a/devices/pc/machine/compaq/deskpro386/other/2048kb/machine.xml b/devices/pc/machine/compaq/deskpro386/other/2048kb/machine.xml index b9c9592b8..ca2304e8b 100644 --- a/devices/pc/machine/compaq/deskpro386/other/2048kb/machine.xml +++ b/devices/pc/machine/compaq/deskpro386/other/2048kb/machine.xml @@ -1,5 +1,5 @@ - + diff --git a/devices/pc/machine/compaq/deskpro386/vga/2048kb/machine.xml b/devices/pc/machine/compaq/deskpro386/vga/2048kb/machine.xml index 4083855f5..ae6956071 100644 --- a/devices/pc/machine/compaq/deskpro386/vga/2048kb/machine.xml +++ b/devices/pc/machine/compaq/deskpro386/vga/2048kb/machine.xml @@ -1,5 +1,5 @@ - + diff --git a/disks/pc/apps/lotus/123/1.0a/manifest.xml b/disks/pc/apps/lotus/123/1.0a/manifest.xml index 480e53760..c2d103f42 100644 --- a/disks/pc/apps/lotus/123/1.0a/manifest.xml +++ b/disks/pc/apps/lotus/123/1.0a/manifest.xml @@ -1,5 +1,5 @@ - + 1-2-3 1.0a diff --git a/disks/pc/apps/microsoft/winword/2.0c/manifest.xml b/disks/pc/apps/microsoft/winword/2.0c/manifest.xml index a3d61bfca..98025d70c 100644 --- a/disks/pc/apps/microsoft/winword/2.0c/manifest.xml +++ b/disks/pc/apps/microsoft/winword/2.0c/manifest.xml @@ -1,5 +1,5 @@ - + Word for Windows 2.0c diff --git a/disks/pc/apps/microsoft/word/3.0/manifest.xml b/disks/pc/apps/microsoft/word/3.0/manifest.xml index 6de568dea..fa6d2652e 100644 --- a/disks/pc/apps/microsoft/word/3.0/manifest.xml +++ b/disks/pc/apps/microsoft/word/3.0/manifest.xml @@ -1,5 +1,5 @@ - + MS Word 3.0 diff --git a/disks/pc/apps/microsoft/word/3.1/manifest.xml b/disks/pc/apps/microsoft/word/3.1/manifest.xml index 8e52f857f..80a5cb0d0 100644 --- a/disks/pc/apps/microsoft/word/3.1/manifest.xml +++ b/disks/pc/apps/microsoft/word/3.1/manifest.xml @@ -1,5 +1,5 @@ - + MS Word 3.1 diff --git a/disks/pc/apps/microsoft/word/5.0/manifest.xml b/disks/pc/apps/microsoft/word/5.0/manifest.xml index 717c8f1e4..94115dbc3 100644 --- a/disks/pc/apps/microsoft/word/5.0/manifest.xml +++ b/disks/pc/apps/microsoft/word/5.0/manifest.xml @@ -1,5 +1,5 @@ - + MS Word 5.0 diff --git a/disks/pc/cpm/machine.xml b/disks/pc/cpm/machine.xml index 9a2ed1328..9d07c9313 100644 --- a/disks/pc/cpm/machine.xml +++ b/disks/pc/cpm/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150) running CP/M-86 diff --git a/disks/pc/cpm/manifest.xml b/disks/pc/cpm/manifest.xml index 2362f2fc6..626b5575e 100644 --- a/disks/pc/cpm/manifest.xml +++ b/disks/pc/cpm/manifest.xml @@ -1,5 +1,5 @@ - + CP/M-86 1.1B diff --git a/disks/pc/diags/ibm/2.20/machine.xml b/disks/pc/diags/ibm/2.20/machine.xml index 434d03805..bf1db0ee5 100644 --- a/disks/pc/diags/ibm/2.20/machine.xml +++ b/disks/pc/diags/ibm/2.20/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150) running IBM Advanced Diagnostics 2.20 diff --git a/disks/pc/diags/ibm/2.20/manifest.xml b/disks/pc/diags/ibm/2.20/manifest.xml index e6e12fafd..a477a5a8a 100644 --- a/disks/pc/diags/ibm/2.20/manifest.xml +++ b/disks/pc/diags/ibm/2.20/manifest.xml @@ -1,5 +1,5 @@ - + IBM Advanced Diagnostics 2.20 diff --git a/disks/pc/dos/compaq/3.10/manifest.xml b/disks/pc/dos/compaq/3.10/manifest.xml index e6995b8bb..750dce318 100644 --- a/disks/pc/dos/compaq/3.10/manifest.xml +++ b/disks/pc/dos/compaq/3.10/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 3.10 diff --git a/disks/pc/dos/compaq/3.31/manifest.xml b/disks/pc/dos/compaq/3.31/manifest.xml index 0f9c5bc55..40df28bc7 100644 --- a/disks/pc/dos/compaq/3.31/manifest.xml +++ b/disks/pc/dos/compaq/3.31/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 3.31 diff --git a/disks/pc/dos/ibm/1.00/manifest.xml b/disks/pc/dos/ibm/1.00/manifest.xml index 0b63a50ac..a085118a2 100644 --- a/disks/pc/dos/ibm/1.00/manifest.xml +++ b/disks/pc/dos/ibm/1.00/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 1.00 diff --git a/disks/pc/dos/ibm/1.10/manifest.xml b/disks/pc/dos/ibm/1.10/manifest.xml index caf770168..2597a24d8 100644 --- a/disks/pc/dos/ibm/1.10/manifest.xml +++ b/disks/pc/dos/ibm/1.10/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 1.10 diff --git a/disks/pc/dos/ibm/2.00/manifest.xml b/disks/pc/dos/ibm/2.00/manifest.xml index 70f0e0374..5358cd767 100644 --- a/disks/pc/dos/ibm/2.00/manifest.xml +++ b/disks/pc/dos/ibm/2.00/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 2.00 diff --git a/disks/pc/dos/ibm/2.10/manifest.xml b/disks/pc/dos/ibm/2.10/manifest.xml index c579cdc9c..44b62ebc0 100644 --- a/disks/pc/dos/ibm/2.10/manifest.xml +++ b/disks/pc/dos/ibm/2.10/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 2.10 diff --git a/disks/pc/dos/ibm/3.00/manifest.xml b/disks/pc/dos/ibm/3.00/manifest.xml index 745f70355..a466cf978 100644 --- a/disks/pc/dos/ibm/3.00/manifest.xml +++ b/disks/pc/dos/ibm/3.00/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 3.00 diff --git a/disks/pc/dos/ibm/3.10/manifest.xml b/disks/pc/dos/ibm/3.10/manifest.xml index e176ef0ef..2f034f259 100644 --- a/disks/pc/dos/ibm/3.10/manifest.xml +++ b/disks/pc/dos/ibm/3.10/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 3.10 diff --git a/disks/pc/dos/ibm/3.20/manifest.xml b/disks/pc/dos/ibm/3.20/manifest.xml index 3b5cd9251..ae65eb4b6 100644 --- a/disks/pc/dos/ibm/3.20/manifest.xml +++ b/disks/pc/dos/ibm/3.20/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 3.20 diff --git a/disks/pc/dos/ibm/3.30/manifest.xml b/disks/pc/dos/ibm/3.30/manifest.xml index a7154ecee..0f5aa678f 100644 --- a/disks/pc/dos/ibm/3.30/manifest.xml +++ b/disks/pc/dos/ibm/3.30/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 3.30 diff --git a/disks/pc/dos/ibm/4.00/manifest.xml b/disks/pc/dos/ibm/4.00/manifest.xml index 6399624d7..a3aa2cc73 100644 --- a/disks/pc/dos/ibm/4.00/manifest.xml +++ b/disks/pc/dos/ibm/4.00/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 4.00 diff --git a/disks/pc/dos/ibm/5.00/manifest.xml b/disks/pc/dos/ibm/5.00/manifest.xml index 3c3cad369..b3f588f34 100644 --- a/disks/pc/dos/ibm/5.00/manifest.xml +++ b/disks/pc/dos/ibm/5.00/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 5.00 diff --git a/disks/pc/dos/ibm/6.10/manifest.xml b/disks/pc/dos/ibm/6.10/manifest.xml index 387da72e3..da028c811 100644 --- a/disks/pc/dos/ibm/6.10/manifest.xml +++ b/disks/pc/dos/ibm/6.10/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 6.10 diff --git a/disks/pc/dos/ibm/7.00/manifest.xml b/disks/pc/dos/ibm/7.00/manifest.xml index e49532047..326c7373e 100644 --- a/disks/pc/dos/ibm/7.00/manifest.xml +++ b/disks/pc/dos/ibm/7.00/manifest.xml @@ -1,5 +1,5 @@ - + PC-DOS 7.00 diff --git a/disks/pc/dos/microsoft/3.20/manifest.xml b/disks/pc/dos/microsoft/3.20/manifest.xml index bcddf4fb3..6578fa76c 100644 --- a/disks/pc/dos/microsoft/3.20/manifest.xml +++ b/disks/pc/dos/microsoft/3.20/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 3.20 diff --git a/disks/pc/dos/microsoft/3.30/manifest.xml b/disks/pc/dos/microsoft/3.30/manifest.xml index 370750797..3989df146 100644 --- a/disks/pc/dos/microsoft/3.30/manifest.xml +++ b/disks/pc/dos/microsoft/3.30/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 3.30 diff --git a/disks/pc/dos/microsoft/4.01/manifest.xml b/disks/pc/dos/microsoft/4.01/manifest.xml index 7de5b1eaa..71dda99b3 100644 --- a/disks/pc/dos/microsoft/4.01/manifest.xml +++ b/disks/pc/dos/microsoft/4.01/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 4.01 diff --git a/disks/pc/dos/microsoft/4.0M/manifest.xml b/disks/pc/dos/microsoft/4.0M/manifest.xml index fae7dda27..10b9db5ea 100644 --- a/disks/pc/dos/microsoft/4.0M/manifest.xml +++ b/disks/pc/dos/microsoft/4.0M/manifest.xml @@ -1,5 +1,5 @@ - + MS-DOS 4.0M diff --git a/disks/pc/games/infocom/hhiker/manifest.xml b/disks/pc/games/infocom/hhiker/manifest.xml index f7b273a9e..0f2647482 100644 --- a/disks/pc/games/infocom/hhiker/manifest.xml +++ b/disks/pc/games/infocom/hhiker/manifest.xml @@ -1,5 +1,5 @@ - + The Hitchhiker's Guide to the Galaxy diff --git a/disks/pc/games/infocom/machine-debug.xml b/disks/pc/games/infocom/machine-debug.xml index 1f1a4ef71..7b5c0a3cf 100644 --- a/disks/pc/games/infocom/machine-debug.xml +++ b/disks/pc/games/infocom/machine-debug.xml @@ -1,5 +1,5 @@ - + IBM PC Model 5150 (CGA, 64K) diff --git a/disks/pc/games/infocom/machine.xml b/disks/pc/games/infocom/machine.xml index a7d75cdc3..151d26d9c 100644 --- a/disks/pc/games/infocom/machine.xml +++ b/disks/pc/games/infocom/machine.xml @@ -1,5 +1,5 @@ - + IBM PC Model 5150 (CGA, 64K) diff --git a/disks/pc/games/infocom/planet/manifest.xml b/disks/pc/games/infocom/planet/manifest.xml index d65ef7e96..8d6fd39ab 100644 --- a/disks/pc/games/infocom/planet/manifest.xml +++ b/disks/pc/games/infocom/planet/manifest.xml @@ -1,5 +1,5 @@ - + Planetfall diff --git a/disks/pc/games/infocom/zork1/debugger/machine.xml b/disks/pc/games/infocom/zork1/debugger/machine.xml index eba8a6ae8..afcb2dcec 100644 --- a/disks/pc/games/infocom/zork1/debugger/machine.xml +++ b/disks/pc/games/infocom/zork1/debugger/machine.xml @@ -1,5 +1,5 @@ - + Zork I (IBM PC Model 5150) diff --git a/disks/pc/games/infocom/zork1/manifest.xml b/disks/pc/games/infocom/zork1/manifest.xml index e4a8557d3..c033157f7 100644 --- a/disks/pc/games/infocom/zork1/manifest.xml +++ b/disks/pc/games/infocom/zork1/manifest.xml @@ -1,5 +1,5 @@ - + Zork I diff --git a/disks/pc/games/infocom/zork2/manifest.xml b/disks/pc/games/infocom/zork2/manifest.xml index 6485f6ce3..94b553169 100644 --- a/disks/pc/games/infocom/zork2/manifest.xml +++ b/disks/pc/games/infocom/zork2/manifest.xml @@ -1,5 +1,5 @@ - + Zork II diff --git a/disks/pc/games/infocom/zork3/manifest.xml b/disks/pc/games/infocom/zork3/manifest.xml index 2e736abb5..87c5447c3 100644 --- a/disks/pc/games/infocom/zork3/manifest.xml +++ b/disks/pc/games/infocom/zork3/manifest.xml @@ -1,5 +1,5 @@ - + Zork III diff --git a/disks/pc/games/microsoft/adventure/machine.xml b/disks/pc/games/microsoft/adventure/machine.xml index d92a9c6b6..c4f429762 100644 --- a/disks/pc/games/microsoft/adventure/machine.xml +++ b/disks/pc/games/microsoft/adventure/machine.xml @@ -1,5 +1,5 @@ - + IBM PC (Model 5150) running Microsoft Adventure diff --git a/disks/pc/games/microsoft/adventure/manifest.xml b/disks/pc/games/microsoft/adventure/manifest.xml index c5b8e797e..5d3ef6959 100644 --- a/disks/pc/games/microsoft/adventure/manifest.xml +++ b/disks/pc/games/microsoft/adventure/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Adventure 1.00 diff --git a/disks/pc/games/microsoft/flightsim/manifest.xml b/disks/pc/games/microsoft/flightsim/manifest.xml index 9c27d4959..8b311029c 100644 --- a/disks/pc/games/microsoft/flightsim/manifest.xml +++ b/disks/pc/games/microsoft/flightsim/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Flight Simulator diff --git a/disks/pc/minix/1.1/manifest.xml b/disks/pc/minix/1.1/manifest.xml index 2aac038d1..7c48941b5 100644 --- a/disks/pc/minix/1.1/manifest.xml +++ b/disks/pc/minix/1.1/manifest.xml @@ -1,5 +1,5 @@ - + MINIX 1.1 diff --git a/disks/pc/os2/ibm/1.0/machine.xml b/disks/pc/os2/ibm/1.0/machine.xml index 9052f0e2d..6521de326 100644 --- a/disks/pc/os2/ibm/1.0/machine.xml +++ b/disks/pc/os2/ibm/1.0/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (8Mhz), 128Kb EGA, 1152Kb RAM, 20Mb Hard Disk diff --git a/disks/pc/os2/ibm/1.0/manifest.xml b/disks/pc/os2/ibm/1.0/manifest.xml index 4cd2c3c78..c616a8bf1 100644 --- a/disks/pc/os2/ibm/1.0/manifest.xml +++ b/disks/pc/os2/ibm/1.0/manifest.xml @@ -1,5 +1,5 @@ - + IBM OS/2 1.0 diff --git a/disks/pc/os2/ibm/1.1/manifest.xml b/disks/pc/os2/ibm/1.1/manifest.xml index 57688176c..483c6137f 100644 --- a/disks/pc/os2/ibm/1.1/manifest.xml +++ b/disks/pc/os2/ibm/1.1/manifest.xml @@ -1,5 +1,5 @@ - + IBM OS/2 1.1 diff --git a/disks/pc/os2/ibm/1.3/manifest.xml b/disks/pc/os2/ibm/1.3/manifest.xml index 59e453893..d4edc65d1 100644 --- a/disks/pc/os2/ibm/1.3/manifest.xml +++ b/disks/pc/os2/ibm/1.3/manifest.xml @@ -1,5 +1,5 @@ - + IBM OS/2 1.3 diff --git a/disks/pc/os2/misc/1.0/debugger/machine.xml b/disks/pc/os2/misc/1.0/debugger/machine.xml index e0664cda5..ba0a4b387 100644 --- a/disks/pc/os2/misc/1.0/debugger/machine.xml +++ b/disks/pc/os2/misc/1.0/debugger/machine.xml @@ -1,5 +1,5 @@ - + IBM PC AT (8Mhz), 128Kb EGA, 1152Kb RAM, 20Mb Hard Disk diff --git a/disks/pc/os2/misc/manifest.xml b/disks/pc/os2/misc/manifest.xml index 12e6939db..2e41b8d1d 100644 --- a/disks/pc/os2/misc/manifest.xml +++ b/disks/pc/os2/misc/manifest.xml @@ -1,5 +1,5 @@ - + OS/2 Miscellaneous Disks diff --git a/disks/pc/tools/borland/pascal/3.0/manifest.xml b/disks/pc/tools/borland/pascal/3.0/manifest.xml index 451290771..14273dde8 100644 --- a/disks/pc/tools/borland/pascal/3.0/manifest.xml +++ b/disks/pc/tools/borland/pascal/3.0/manifest.xml @@ -1,5 +1,5 @@ - + Turbo Pascal diff --git a/disks/pc/tools/microsoft/basic/manifest.xml b/disks/pc/tools/microsoft/basic/manifest.xml index f57fb9432..cdd1b65cc 100644 --- a/disks/pc/tools/microsoft/basic/manifest.xml +++ b/disks/pc/tools/microsoft/basic/manifest.xml @@ -1,5 +1,5 @@ - + MS BASIC diff --git a/disks/pc/tools/microsoft/c/4.00/manifest.xml b/disks/pc/tools/microsoft/c/4.00/manifest.xml index ed89545ce..3043334fd 100644 --- a/disks/pc/tools/microsoft/c/4.00/manifest.xml +++ b/disks/pc/tools/microsoft/c/4.00/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft C Compiler 4.00 diff --git a/disks/pc/tools/microsoft/masm/4.00/manifest.xml b/disks/pc/tools/microsoft/masm/4.00/manifest.xml index 3a4727a16..ed9572b00 100644 --- a/disks/pc/tools/microsoft/masm/4.00/manifest.xml +++ b/disks/pc/tools/microsoft/masm/4.00/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Macro Assember Tool diff --git a/disks/pc/tools/microsoft/mouse/5.00/manifest.xml b/disks/pc/tools/microsoft/mouse/5.00/manifest.xml index 94cd8c305..5fd43cb46 100644 --- a/disks/pc/tools/microsoft/mouse/5.00/manifest.xml +++ b/disks/pc/tools/microsoft/mouse/5.00/manifest.xml @@ -1,5 +1,5 @@ - + MS Mouse 5.00 diff --git a/disks/pc/tools/microsoft/windows/sdk/1.01/manifest.xml b/disks/pc/tools/microsoft/windows/sdk/1.01/manifest.xml index 65db8d716..6c0ee1ce0 100644 --- a/disks/pc/tools/microsoft/windows/sdk/1.01/manifest.xml +++ b/disks/pc/tools/microsoft/windows/sdk/1.01/manifest.xml @@ -1,5 +1,5 @@ - + Windows 1.01 SDK diff --git a/disks/pc/tools/microsoft/windows/sdk/1.04/manifest.xml b/disks/pc/tools/microsoft/windows/sdk/1.04/manifest.xml index aa668f856..fb30039ce 100644 --- a/disks/pc/tools/microsoft/windows/sdk/1.04/manifest.xml +++ b/disks/pc/tools/microsoft/windows/sdk/1.04/manifest.xml @@ -1,5 +1,5 @@ - + Windows 1.04 SDK os2museum.com diff --git a/disks/pc/tools/microsoft/windows/sdk/2.03/manifest.xml b/disks/pc/tools/microsoft/windows/sdk/2.03/manifest.xml index 33210baea..e32e0191e 100644 --- a/disks/pc/tools/microsoft/windows/sdk/2.03/manifest.xml +++ b/disks/pc/tools/microsoft/windows/sdk/2.03/manifest.xml @@ -1,5 +1,5 @@ - + Windows 2.03 SDK os2museum.com diff --git a/disks/pc/unix/ibm/pcix/manifest.xml b/disks/pc/unix/ibm/pcix/manifest.xml index 72bde82c4..7822aad3a 100644 --- a/disks/pc/unix/ibm/pcix/manifest.xml +++ b/disks/pc/unix/ibm/pcix/manifest.xml @@ -1,5 +1,5 @@ - + PC/IX 1.0 diff --git a/disks/pc/unix/microport/system-v/2.3/manifest.xml b/disks/pc/unix/microport/system-v/2.3/manifest.xml index 3b97fbb23..a9ffa13f4 100644 --- a/disks/pc/unix/microport/system-v/2.3/manifest.xml +++ b/disks/pc/unix/microport/system-v/2.3/manifest.xml @@ -1,5 +1,5 @@ - + Microport's AT&T UNIX System V-AT 2.3 (5ยจ) diff --git a/disks/pc/windows/1.01/manifest.xml b/disks/pc/windows/1.01/manifest.xml index a38f039dd..8d5aa1c71 100644 --- a/disks/pc/windows/1.01/manifest.xml +++ b/disks/pc/windows/1.01/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows 1.01 diff --git a/disks/pc/windows/1.03/manifest.xml b/disks/pc/windows/1.03/manifest.xml index d626c319e..9d20a31b0 100644 --- a/disks/pc/windows/1.03/manifest.xml +++ b/disks/pc/windows/1.03/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows 1.03 diff --git a/disks/pc/windows/1.03a/manifest.xml b/disks/pc/windows/1.03a/manifest.xml index a11ef1764..7d83b97bf 100644 --- a/disks/pc/windows/1.03a/manifest.xml +++ b/disks/pc/windows/1.03a/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows 1.03a diff --git a/disks/pc/windows/1.04/manifest.xml b/disks/pc/windows/1.04/manifest.xml index cc2f0d887..de84e01eb 100644 --- a/disks/pc/windows/1.04/manifest.xml +++ b/disks/pc/windows/1.04/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows 1.04 os2museum.com diff --git a/disks/pc/windows/2.03/manifest.xml b/disks/pc/windows/2.03/manifest.xml index 363a3693a..0f0f821d6 100644 --- a/disks/pc/windows/2.03/manifest.xml +++ b/disks/pc/windows/2.03/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows 2.03 os2museum.com diff --git a/disks/pc/windows/wincomm/manifest.xml b/disks/pc/windows/wincomm/manifest.xml index 2e2dca2b7..d860e03c9 100644 --- a/disks/pc/windows/wincomm/manifest.xml +++ b/disks/pc/windows/wincomm/manifest.xml @@ -1,5 +1,5 @@ - + Windows COMM Driver (Source) diff --git a/disks/pc/xenix/sco/8086/2.1.3/manifest.xml b/disks/pc/xenix/sco/8086/2.1.3/manifest.xml index 717286d9f..c0b6e5fab 100644 --- a/disks/pc/xenix/sco/8086/2.1.3/manifest.xml +++ b/disks/pc/xenix/sco/8086/2.1.3/manifest.xml @@ -1,5 +1,5 @@ - + SCO Xenix 8086 Operating System v2.1.3 diff --git a/docs/pcjs/demos/components.xsl b/docs/pcjs/demos/components.xsl index ce85b2ae6..3d4579d9f 100644 --- a/docs/pcjs/demos/components.xsl +++ b/docs/pcjs/demos/components.xsl @@ -8,7 +8,7 @@ pc pcjs - 1.18.0 + 1.18.1 www.pcjs.org diff --git a/docs/pcjs/demos/pc-dbg.js b/docs/pcjs/demos/pc-dbg.js index 164504f3a..5c90a019c 100644 --- a/docs/pcjs/demos/pc-dbg.js +++ b/docs/pcjs/demos/pc-dbg.js @@ -1107,7 +1107,7 @@ g;break;case "EBX":a.O.D=g;break;case "ECX":a.O.G=g;break;case "EDX":a.O.H=g;bre Jb(a.O));mm(a,gm(a.hd))}}function Fm(a,b,c){var d="tr"==b;b=null!=c?+c:1;var e=1==b?0:1;Ia(b,function(){return mb(a,!0)&&a.dh(e,d,!1)},function(){Yc(a.O);mb(a,!1)})}function um(a,b,c){b.bl=b.Vc||b.Tc;c&&(b.Vc=4==a.O.ta.pa,b.Tc=4==a.O.ta.Bd);b.re=c} function mm(a,b,c,d){b=Am(a,b,1);if(null!=b.Ca){void 0===d&&(d=1);var e=Gl(a,a.Yn,b.ja,a.ma.Ph),e=256;if(void 0!==c){e=Am(a,c,1);if(null==e.Ca||e.Caa.nd&&a.ad.length&&(a.nd=0);if(0>a.nd||b!=a.ad[a.nd])a.ad.splice(0,0,b),a.nd=0;a.nd--}else b=a.ad[a.nd+1];a=b?b.split(0<=b.indexOf("|")?"|":";"):[""];for(var d in a)a[d]=na(a[d]);return a} -function Kl(a,b){var c=!0;try{if(b.length||(a.vg?(a.S("ended assemble @"+gm(a.Kf)),a.hd=a.Kf,a.vg=!1):b="?"),b=b.toLowerCase(),pb(a)&&0d||"z"d||"z"Lm){if(d.load(this.hi)){this.ag=new Ge(this,"1.18.0","failsafe");this.ag.load()&&(Pm(this,d),a=2,Im(this.ag));this.ag.set("timestamp",ta());Jm(this.ag);var e=this.rd&&!this.Vi;if(1==a||Ca("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var g=d.get("code"),l=d.get("data");g&&("ok"==g?d.load(l):("error"== +function Om(a,b){var c=new Ge(a,"1.18.1","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.Ba("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}} +f.dk=function(a){void 0===a&&(a=this.rd||(this.hi?1:Lm));var b=!1,c=!1;this.Jn=!1;var d=this.ok||new Ge(this,"1.18.1");if(-1==a)b=!0;else if(a>Lm){if(d.load(this.hi)){this.ag=new Ge(this,"1.18.1","failsafe");this.ag.load()&&(Pm(this,d),a=2,Im(this.ag));this.ag.set("timestamp",ta());Jm(this.ag);var e=this.rd&&!this.Vi;if(1==a||Ca("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var g=d.get("code"),l=d.get("data");g&&("ok"==g?d.load(l):("error"== g&&"no machine state"!=l?(this.Ba("Error: "+l),"unable to verify user"==l&&(Ga("user",""),this.sd=null)):this.S(g+": "+l),Im(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&Om(this,c?d:null)}else 2==a&&d.clear()}else Om(this);delete this.hi;delete this.ok}e=eb(this.id);for(g=0;ga[1];a=a[2];this.ea.gc=!0;this.Gn||(this.S("PCjs v1.18.0\nCopyright \u00a9 2012-2015 Jeff Parsons \nLicense: GPL version 3 or later "),this.Gn=!0);this.O&&(Qm(this,this.O,b,c,a),Zc(this.O));this.Jn&&(Pm(this,b),b.clear());!c&&this.ag&&(this.ag.clear(),delete this.ag)}; -function Pm(a,b){if(Ca("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.ff(),d=b.toString(),e={app:"PCjs",ver:"1.18.0"};e.url=a.url;e.user=c;e.type="bug";e.data=d;ya("http://www.pcjs.org/api/v1/report",!0,e)}} -function Gm(a,b,c){var d,e="none",g=new Ge(a,"1.18.0"),l=new Ge(a,"1.18.0","validate"),p=ta();l.set("timestamp",p);g.set("timestamp",p);g.set("version","1.18.0");g.set("url",window?window.location.href:null);g.set("browser",window?window.navigator.userAgent:"");a.O&&a.O.ic&&(c&&a.O.vb(),d=a.O.ic(b,c),"object"===typeof d&&g.set(a.O.id,d),c&&(a.O.ea.gc=!1,!1===d&&(e=null)));for(var p=eb(a.id),v=0;va[1];a=a[2];this.ea.gc=!0;this.Gn||(this.S("PCjs v1.18.1\nCopyright \u00a9 2012-2015 Jeff Parsons \nLicense: GPL version 3 or later "),this.Gn=!0);this.O&&(Qm(this,this.O,b,c,a),Zc(this.O));this.Jn&&(Pm(this,b),b.clear());!c&&this.ag&&(this.ag.clear(),delete this.ag)}; +function Pm(a,b){if(Ca("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.ff(),d=b.toString(),e={app:"PCjs",ver:"1.18.1"};e.url=a.url;e.user=c;e.type="bug";e.data=d;ya("http://www.pcjs.org/api/v1/report",!0,e)}} +function Gm(a,b,c){var d,e="none",g=new Ge(a,"1.18.1"),l=new Ge(a,"1.18.1","validate"),p=ta();l.set("timestamp",p);g.set("timestamp",p);g.set("version","1.18.1");g.set("url",window?window.location.href:null);g.set("browser",window?window.navigator.userAgent:"");a.O&&a.O.ic&&(c&&a.O.vb(),d=a.O.ic(b,c),"object"===typeof d&&g.set(a.O.id,d),c&&(a.O.ea.gc=!1,!1===d&&(e=null)));for(var p=eb(a.id),v=0;v/g.exec(a)){var e=d[2];b("Loading "+e+"...");ya(e,!0,null,null,function(g,l,p){if(p||!l)c(a,"unable to resolve XML reference: "+d[0]+" ("+p+")");else{if(g=d[3])if(p=l.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var v=p[0],w,E=/( [a-z]+=)(['"])(.*?)\2/g;w=E.exec(g);)v=0>v.indexOf(w[1])?v.replace(">",w[0]+">"):v.replace(new RegExp(w[1]+"(['\"])(.*?)\\1"),w[0]);p[0]!=v&&(l=l.replace(p[0],v))}else{c(a,"missing <"+d[1]+"> in "+e);return}l=l.replace(/<\?xml[^>]*>[\r\n]*/, "");a=a.replace(d[0],l);Ym(a,b,c)}})}else c(a,null)} -function Zm(a,b,c,d){function e(a){if(void 0===p){var b=l&&kb(l,"machine-warning");p=b&&b[0]||l}p&&(p.innerHTML=ka(a))}function g(a){e("Error: "+a);v&&(--Tm||Ta(!0));v=!1}var l,p,v=!0;Tm++;try{if(l=window.document.getElementById(a)){c||(c="/versions/pcjs/1.18.0/components.xsl");var w=function(d,p){if(p){var v=function(d,v){if(v)if(v)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var w=p.transformNode(v);w?(l.outerHTML=w,--Tm||Ta(!0)):g("transformNodeToObject failed")}else window.document.implementation&& +function Zm(a,b,c,d){function e(a){if(void 0===p){var b=l&&kb(l,"machine-warning");p=b&&b[0]||l}p&&(p.innerHTML=ka(a))}function g(a){e("Error: "+a);v&&(--Tm||Ta(!0));v=!1}var l,p,v=!0;Tm++;try{if(l=window.document.getElementById(a)){c||(c="/versions/pcjs/1.18.1/components.xsl");var w=function(d,p){if(p){var v=function(d,v){if(v)if(v)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var w=p.transformNode(v);w?(l.outerHTML=w,--Tm||Ta(!0)):g("transformNodeToObject failed")}else window.document.implementation&& window.document.implementation.createDocument?(w=new XSLTProcessor,w.importStylesheet(v),(w=w.transformToFragment(p,window.document))?l.parentNode?(l.parentNode.replaceChild(w,l),--Tm||Ta(!0)):g("invalid machine element: "+a):g("transformToFragment failed")):g("unable to transform XML: unsupported browser");else g("failed to load XSL file: "+c);else g(d)};p?Um(c,null,null,!1,e,v):g("failed to load XML file: "+b)}else g(d)};"<"!=b.charAt(0)?Um(b,a,d,!0,e,w):Vm(b,null,a,d,!1,e,w)}else g("missing machine element: "+ a)}catch(E){g(E.message)}return v}window.embedPC=function(a,b,c,d){Ta(!1);return Zm(a,b,c,d)};window.enableEvents=Ta;window.sendEvent=Ua;})(); diff --git a/docs/pcjs/demos/pc.js b/docs/pcjs/demos/pc.js index dbc84ba4d..6725f40e5 100644 --- a/docs/pcjs/demos/pc.js +++ b/docs/pcjs/demos/pc.js @@ -1002,21 +1002,21 @@ Yd.prototype={constructor:Yd,set:function(a,b){try{this[this.id][a]=b}catch(c){} a:JSON.stringify(a)},clear:function(a){xk(this);var b=[];try{for(var c=0,d=window.localStorage.length;cAk){if(d.load(this.jh)){this.rf=new Yd(this,"1.18.0","failsafe");this.rf.load()&&(Ek(this,d),a=2,xk(this.rf));this.rf.set("timestamp",ma());yk(this.rf);var e=this.Xc&&!this.ai;if(1==a||ta("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var m=d.get("code"),n=d.get("data");m&&("ok"==m?d.load(n):("error"== +function Dk(a,b){var c=new Yd(a,"1.18.1","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.wa("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}} +f.lj=function(a){void 0===a&&(a=this.Xc||(this.jh?1:Ak));var b=!1,c=!1;this.Km=!1;var d=this.zj||new Yd(this,"1.18.1");if(-1==a)b=!0;else if(a>Ak){if(d.load(this.jh)){this.rf=new Yd(this,"1.18.1","failsafe");this.rf.load()&&(Ek(this,d),a=2,xk(this.rf));this.rf.set("timestamp",ma());yk(this.rf);var e=this.Xc&&!this.ai;if(1==a||ta("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var m=d.get("code"),n=d.get("data");m&&("ok"==m?d.load(n):("error"== m&&"no machine state"!=n?(this.wa("Error: "+n),"unable to verify user"==n&&(xa("user",""),this.Yc=null)):this.mc(m+": "+n),xk(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&Dk(this,c?d:null)}else 2==a&&d.clear()}else Dk(this);delete this.jh;delete this.zj}e=Qa(this.id);for(m=0;ma[1];a=a[2];this.ga.ac=!0;this.Hm||(this.mc("PCjs v1.18.0\nCopyright \u00a9 2012-2015 Jeff Parsons \nLicense: GPL version 3 or later "),this.Hm=!0);this.V&&(Fk(this,this.V,b,c,a),uc(this.V));this.Km&&(Ek(this,b),b.clear());!c&&this.rf&&(this.rf.clear(),delete this.rf)}; -function Ek(a,b){if(ta("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.re(),d=b.toString(),e={app:"PCjs",ver:"1.18.0"};e.url=a.url;e.user=c;e.type="bug";e.data=d;qa("http://www.pcjs.org/api/v1/report",!0,e)}} -function Gk(a,b,c){var d,e="none",m=new Yd(a,"1.18.0"),n=new Yd(a,"1.18.0","validate"),p=ma();n.set("timestamp",p);m.set("timestamp",p);m.set("version","1.18.0");m.set("url",window?window.location.href:null);m.set("browser",window?window.navigator.userAgent:"");a.V&&a.V.cc&&(c&&wc(a.V),d=a.V.cc(b,c),"object"===typeof d&&m.set(a.V.id,d),c&&(a.V.ga.ac=!1,!1===d&&(e=null)));for(var p=Qa(a.id),v=0;va[1];a=a[2];this.ga.ac=!0;this.Hm||(this.mc("PCjs v1.18.1\nCopyright \u00a9 2012-2015 Jeff Parsons \nLicense: GPL version 3 or later "),this.Hm=!0);this.V&&(Fk(this,this.V,b,c,a),uc(this.V));this.Km&&(Ek(this,b),b.clear());!c&&this.rf&&(this.rf.clear(),delete this.rf)}; +function Ek(a,b){if(ta("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.re(),d=b.toString(),e={app:"PCjs",ver:"1.18.1"};e.url=a.url;e.user=c;e.type="bug";e.data=d;qa("http://www.pcjs.org/api/v1/report",!0,e)}} +function Gk(a,b,c){var d,e="none",m=new Yd(a,"1.18.1"),n=new Yd(a,"1.18.1","validate"),p=ma();n.set("timestamp",p);m.set("timestamp",p);m.set("version","1.18.1");m.set("url",window?window.location.href:null);m.set("browser",window?window.navigator.userAgent:"");a.V&&a.V.cc&&(c&&wc(a.V),d=a.V.cc(b,c),"object"===typeof d&&m.set(a.V.id,d),c&&(a.V.ga.ac=!1,!1===d&&(e=null)));for(var p=Qa(a.id),v=0;v/g.exec(a)){var e=d[2];b("Loading "+e+"...");qa(e,!0,null,null,function(m,n,p){if(p||!n)c(a,"unable to resolve XML reference: "+d[0]+" ("+p+")");else{if(m=d[3])if(p=n.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var v=p[0],w,G=/( [a-z]+=)(['"])(.*?)\2/g;w=G.exec(m);)v=0>v.indexOf(w[1])?v.replace(">",w[0]+">"):v.replace(new RegExp(w[1]+"(['\"])(.*?)\\1"),w[0]);p[0]!=v&&(n=n.replace(p[0],v))}else{c(a,"missing <"+d[1]+"> in "+e);return}n=n.replace(/<\?xml[^>]*>[\r\n]*/, "");a=a.replace(d[0],n);Mk(a,b,c)}})}else c(a,null)} -function Nk(a,b,c,d){function e(a){if(void 0===p){var b=n&&Wa(n,"machine-warning");p=b&&b[0]||n}p&&(p.innerHTML=ka(a))}function m(a){e("Error: "+a);v&&(--Jk||Fa(!0));v=!1}var n,p,v=!0;Jk++;try{if(n=window.document.getElementById(a)){c||(c="/versions/pcjs/1.18.0/components.xsl");var w=function(d,p){if(p){var v=function(d,v){if(v)if(v)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var w=p.transformNode(v);w?(n.outerHTML=w,--Jk||Fa(!0)):m("transformNodeToObject failed")}else window.document.implementation&& +function Nk(a,b,c,d){function e(a){if(void 0===p){var b=n&&Wa(n,"machine-warning");p=b&&b[0]||n}p&&(p.innerHTML=ka(a))}function m(a){e("Error: "+a);v&&(--Jk||Fa(!0));v=!1}var n,p,v=!0;Jk++;try{if(n=window.document.getElementById(a)){c||(c="/versions/pcjs/1.18.1/components.xsl");var w=function(d,p){if(p){var v=function(d,v){if(v)if(v)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var w=p.transformNode(v);w?(n.outerHTML=w,--Jk||Fa(!0)):m("transformNodeToObject failed")}else window.document.implementation&& window.document.implementation.createDocument?(w=new XSLTProcessor,w.importStylesheet(v),(w=w.transformToFragment(p,window.document))?n.parentNode?(n.parentNode.replaceChild(w,n),--Jk||Fa(!0)):m("invalid machine element: "+a):m("transformToFragment failed")):m("unable to transform XML: unsupported browser");else m("failed to load XSL file: "+c);else m(d)};p?Kk(c,null,null,!1,e,v):m("failed to load XML file: "+b)}else m(d)};"<"!=b.charAt(0)?Kk(b,a,d,!0,e,w):Lk(b,null,a,d,!1,e,w)}else m("missing machine element: "+ a)}catch(G){m(G.message)}return v}window.embedPC=function(a,b,c,d){Fa(!1);return Nk(a,b,c,d)};window.enableEvents=Fa;window.sendEvent=Ga;})(); diff --git a/modules/pcjs/lib/chipset.js b/modules/pcjs/lib/chipset.js index e1ab64ee3..cc778f592 100644 --- a/modules/pcjs/lib/chipset.js +++ b/modules/pcjs/lib/chipset.js @@ -2303,8 +2303,9 @@ ChipSet.prototype.updateSwitchDesc = function() sText += this.getSWMemorySize(true) + "Kb"; sText += ", " + asMonitorTypes[this.getSWVideoMonitor(true)] + " Monitor"; sText += ", " + this.getSWFloppyDrives(true) + " Floppy Drives"; - if (this.sw1 != null && this.sw1 != this.sw1Init || this.sw2 != null && this.sw2 != this.sw2Init) + if (this.sw1 != null && this.sw1 != this.sw1Init || this.sw2 != null && this.sw2 != this.sw2Init) { sText += " (Reset required)"; + } controlDesc.textContent = sText; } }; @@ -3869,8 +3870,7 @@ ChipSet.prototype.updateTimer = function(iTimer, fCycleReset) * FYI, technically, it appears that the count is never supposed to reach 0, and that an initial count of 1 * is "illegal", whatever that means. */ - else - if (timer.mode == ChipSet.PIT_CTRL.MODE2) { + else if (timer.mode == ChipSet.PIT_CTRL.MODE2) { timer.fOUT = (count != 1); // yes, this line does seem rather pointless.... if (count <= 0) { count = countInit + count; @@ -3903,8 +3903,7 @@ ChipSet.prototype.updateTimer = function(iTimer, fCycleReset) * TODO: Implement the correct behavior for this mode when the count is ODD. In that case, fOUT is supposed * to be "high" for (N + 1) / 2 ticks and "low" for (N - 1) / 2 ticks. */ - else - if (timer.mode == ChipSet.PIT_CTRL.MODE3) { + else if (timer.mode == ChipSet.PIT_CTRL.MODE3) { count -= ticksElapsed; if (count <= 0) { timer.fOUT = !timer.fOUT; diff --git a/modules/pcjs/lib/x86op0f.js b/modules/pcjs/lib/x86op0f.js index 9a262d60b..782c12e51 100644 --- a/modules/pcjs/lib/x86op0f.js +++ b/modules/pcjs/lib/x86op0f.js @@ -1411,8 +1411,8 @@ X86.aOpGrp6Real = [ ]; /* - * Unlike Grp6, Grp7 does not require separate real-mode and protected-mode dispatch tables, - * because all Grp7 instructions are valid in both modes. + * Unlike Grp6, Grp7 and Grp8 do not require separate real-mode and protected-mode dispatch tables, because + * all Grp7 and Grp8 instructions are valid in both modes. */ X86.aOpGrp7 = [ X86.fnSGDT, X86.fnSIDT, X86.fnLGDT, X86.fnLIDT, // 0x0F,0x01(reg=0x0-0x3) diff --git a/modules/pcjs/lib/x86ops.js b/modules/pcjs/lib/x86ops.js index ae74b1e06..47cfc033c 100644 --- a/modules/pcjs/lib/x86ops.js +++ b/modules/pcjs/lib/x86ops.js @@ -49,12 +49,12 @@ X86.opADDmb = function ADDmb() var b = this.getIPByte(); /* * Opcode bytes 0x00 0x00 are sufficiently uncommon that it's more likely we've started - * executing in the weeds, so we'll print a warning if Messages.CPU is enabled (at which - * point you can also choose to halt if Messages.HALT is enabled). + * executing in the weeds, so we'll print a warning if you're in DEBUG mode, and optionally + * stop the CPU if a Debugger is available. */ if (DEBUG && !b) { this.printMessage("suspicious opcode: 0x00 0x00", DEBUGGER || this.bitsMessage); - if (DEBUGGER) this.stopCPU(); + if (DEBUGGER && this.dbg) this.stopCPU(); } this.aOpModMemByte[b].call(this, X86.fnADDb); }; diff --git a/notes.md b/notes.md index ab6cbce9c..55309ddab 100644 --- a/notes.md +++ b/notes.md @@ -241,4 +241,4 @@ that affects the command-line version of PCjs (specifically, the Node REPL), so Next, to update NPM: - [~/Sites/pcjs] sudo npm update -g + [~/Sites/pcjs] sudo npm -g install npm@latest diff --git a/package.json b/package.json index e1ee4d84b..65628f404 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "pcjs", - "version": "1.18.0", + "version": "1.18.1", "description": "Node-enabled version of PCjs", "main": "server.js", "directories": { diff --git a/pubs/pc/programming/Graphics_for_the_IBM_PC/demos/machine-debugger.xml b/pubs/pc/programming/Graphics_for_the_IBM_PC/demos/machine-debugger.xml index bac9cfe13..55e0577bf 100644 --- a/pubs/pc/programming/Graphics_for_the_IBM_PC/demos/machine-debugger.xml +++ b/pubs/pc/programming/Graphics_for_the_IBM_PC/demos/machine-debugger.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 256Kb, 10Mb Drive diff --git a/pubs/pc/programming/Graphics_for_the_IBM_PC/demos/machine.xml b/pubs/pc/programming/Graphics_for_the_IBM_PC/demos/machine.xml index 64e804911..407c31ccf 100644 --- a/pubs/pc/programming/Graphics_for_the_IBM_PC/demos/machine.xml +++ b/pubs/pc/programming/Graphics_for_the_IBM_PC/demos/machine.xml @@ -1,5 +1,5 @@ - + IBM PC XT (Model 5160), CGA, 256Kb, 10Mb Drive diff --git a/pubs/pc/programming/manifest.xml b/pubs/pc/programming/manifest.xml index 81dfe5f7f..cd30d727e 100644 --- a/pubs/pc/programming/manifest.xml +++ b/pubs/pc/programming/manifest.xml @@ -1,5 +1,5 @@ - + PC Programming Guides diff --git a/pubs/pc/reference/ibm/5150/techref/manifest.xml b/pubs/pc/reference/ibm/5150/techref/manifest.xml index 6b87fd9a4..a6b6b2680 100644 --- a/pubs/pc/reference/ibm/5150/techref/manifest.xml +++ b/pubs/pc/reference/ibm/5150/techref/manifest.xml @@ -1,5 +1,5 @@ - + IBM 5150 Manuals minuszerodegrees.net diff --git a/pubs/pc/reference/ibm/5160/techref/manifest.xml b/pubs/pc/reference/ibm/5160/techref/manifest.xml index af720d159..5ec2d503c 100644 --- a/pubs/pc/reference/ibm/5160/techref/manifest.xml +++ b/pubs/pc/reference/ibm/5160/techref/manifest.xml @@ -1,5 +1,5 @@ - + IBM 5160 Technical Reference (April 1983) retroarchive.org diff --git a/pubs/pc/reference/ibm/5170/setup/manifest.xml b/pubs/pc/reference/ibm/5170/setup/manifest.xml index 8e27740af..7b5db09e1 100644 --- a/pubs/pc/reference/ibm/5170/setup/manifest.xml +++ b/pubs/pc/reference/ibm/5170/setup/manifest.xml @@ -1,5 +1,5 @@ - + IBM 5170 Installation and Setup (March 1984) minuszerodegrees.net diff --git a/pubs/pc/reference/ibm/5170/techref/manifest.xml b/pubs/pc/reference/ibm/5170/techref/manifest.xml index 11ddf73d3..4e8c793e8 100644 --- a/pubs/pc/reference/ibm/5170/techref/manifest.xml +++ b/pubs/pc/reference/ibm/5170/techref/manifest.xml @@ -1,5 +1,5 @@ - + IBM 5170 Technical Reference minuszerodegrees.net diff --git a/pubs/pc/reference/ibm/ega/manifest.xml b/pubs/pc/reference/ibm/ega/manifest.xml index 29df88a30..4f9fbb1d4 100644 --- a/pubs/pc/reference/ibm/ega/manifest.xml +++ b/pubs/pc/reference/ibm/ega/manifest.xml @@ -1,5 +1,5 @@ - + IBM Enhanced Graphics Adapter minuszerodegrees.net diff --git a/pubs/pc/reference/ibm/ps2/manifest.xml b/pubs/pc/reference/ibm/ps2/manifest.xml index 664750d38..4699ba2d8 100644 --- a/pubs/pc/reference/ibm/ps2/manifest.xml +++ b/pubs/pc/reference/ibm/ps2/manifest.xml @@ -1,5 +1,5 @@ - + PS/2 Technical Reference diff --git a/pubs/pc/reference/intel/80286/manifest.xml b/pubs/pc/reference/intel/80286/manifest.xml index 53299bd10..b9f1a9b81 100644 --- a/pubs/pc/reference/intel/80286/manifest.xml +++ b/pubs/pc/reference/intel/80286/manifest.xml @@ -1,5 +1,5 @@ - + Intel 80286 References diff --git a/pubs/pc/software/os2/sdk10/manifest.xml b/pubs/pc/software/os2/sdk10/manifest.xml index 9560c70af..3710463b9 100644 --- a/pubs/pc/software/os2/sdk10/manifest.xml +++ b/pubs/pc/software/os2/sdk10/manifest.xml @@ -1,5 +1,5 @@ - + OS/2 1.0 Programmer's Toolkit 1.0 diff --git a/pubs/pc/software/windows/sdk20/manifest.xml b/pubs/pc/software/windows/sdk20/manifest.xml index 4ff725b37..5dffa1929 100644 --- a/pubs/pc/software/windows/sdk20/manifest.xml +++ b/pubs/pc/software/windows/sdk20/manifest.xml @@ -1,5 +1,5 @@ - + Microsoft Windows Software Development Kit 2.0