diff --git a/devices/pc/machine/5160/cga/256kb/win101/machine.xml b/devices/pc/machine/5160/cga/256kb/win101/machine.xml index e05ce65cb..07e7a62cd 100644 --- a/devices/pc/machine/5160/cga/256kb/win101/machine.xml +++ b/devices/pc/machine/5160/cga/256kb/win101/machine.xml @@ -16,7 +16,7 @@ - + diff --git a/devices/pc/machine/5160/cga/640kb/debugger/machine.xml b/devices/pc/machine/5160/cga/640kb/debugger/machine.xml index 9cdf0da3f..d4a499df3 100644 --- a/devices/pc/machine/5160/cga/640kb/debugger/machine.xml +++ b/devices/pc/machine/5160/cga/640kb/debugger/machine.xml @@ -18,4 +18,7 @@ + + + diff --git a/devices/pc/machine/5160/cga/640kb/machine.xml b/devices/pc/machine/5160/cga/640kb/machine.xml index 89662dfc0..431068124 100644 --- a/devices/pc/machine/5160/cga/640kb/machine.xml +++ b/devices/pc/machine/5160/cga/640kb/machine.xml @@ -16,4 +16,7 @@ + + + diff --git a/disks/pc/README.md b/disks/pc/README.md index 37a75b707..bc93adf70 100644 --- a/disks/pc/README.md +++ b/disks/pc/README.md @@ -37,10 +37,12 @@ computer diagnostics, programming tools, and more. ### Applications +* [IBM TopView](apps/ibm/topview/) * [Lotus 1-2-3](apps/lotus/123/) * [MicroPro WordStar](apps/micropro/wordstar/) * [Microsoft Chart](apps/microsoft/chart/) * [Microsoft Word](apps/microsoft/word/) +* [Sunny Hill Omniview](apps/sunnyhill/omniview/) ### Games diff --git a/disks/pc/apps/README.md b/disks/pc/apps/README.md index 74f81cda7..1ec75acc9 100644 --- a/disks/pc/apps/README.md +++ b/disks/pc/apps/README.md @@ -9,6 +9,7 @@ PC Applications Information is available for applications from these vendors: +* [IBM](ibm/) * [Lotus](lotus/) * [MicroPro](micropro/) * [Microsoft](microsoft/) diff --git a/disks/pc/apps/ibm/README.md b/disks/pc/apps/ibm/README.md new file mode 100644 index 000000000..5be7e37c6 --- /dev/null +++ b/disks/pc/apps/ibm/README.md @@ -0,0 +1,12 @@ +--- +layout: page +title: IBM Applications +permalink: /disks/pc/apps/ibm/ +--- + +IBM Applications +--- + +Information is available for these IBM applications: + +* [TopView](topview/) diff --git a/disks/pc/apps/ibm/topview/1.01/README.md b/disks/pc/apps/ibm/topview/1.01/README.md new file mode 100644 index 000000000..2629daa77 --- /dev/null +++ b/disks/pc/apps/ibm/topview/1.01/README.md @@ -0,0 +1,103 @@ +--- +layout: page +title: TopView 1.01 +permalink: /disks/pc/apps/ibm/topview/1.01/ +machines: + - type: pc + id: ibm5160 + config: /devices/pc/machine/5160/cga/640kb/machine.xml + autoMount: + A: + path: /disks/pc/dos/ibm/2.00/PCDOS200-DISK1.json + B: + path: /disks/pc/apps/ibm/topview/1.01/TOPVIEW101-PROGRAM.json +--- + +TopView 1.01 +--- + +{% include machine.html id="ibm5160" %} + +### Directory of TopView 1.01 (Program) + + Volume in drive A is TV101032885 + + Directory of A:\ + + TV PIF 13946 03-28-85 12:00p + TV PII 1408 03-28-85 12:00p + ADD EXT 16384 03-28-85 12:00p + ATRIBUTE DEF 32 03-28-85 12:00p + AUTOPIF 369 03-28-85 12:00p + CHANGE EXT 13568 03-28-85 12:00p + CLOCK COM 3682 03-28-85 12:00p + CLOCK PLB 2071 03-28-85 12:00p + COLORS EXT 10752 03-28-85 12:00p + COLORS PIF 369 03-28-85 12:00p + DELETE EXT 6400 03-28-85 12:00p + DOS EXT 39168 03-28-85 12:00p + DOSHELP PLB 10237 03-28-85 12:00p + DW1 TBL 51 03-28-85 12:00p + DW2 TBL 51 03-28-85 12:00p + EW TBL 55 03-28-85 12:00p + FD BAT 6163 03-28-85 12:00p + FDPGM COM 187 03-28-85 12:00p + FDR BAT 46 03-28-85 12:00p + FILTER EXT 3905 03-28-85 12:00p + G BAT 33 03-28-85 12:00p + PCW TBL 55 03-28-85 12:00p + PDIO EXT 3072 03-28-85 12:00p + PDIOKEYB EXT 3072 03-28-85 12:00p + PDIOMICP EXT 3222 03-28-85 12:00p + PDIOMICS EXT 3209 03-28-85 12:00p + PDIOMSY1 EXT 3096 03-28-85 12:00p + PDIOVIS1 EXT 3214 03-28-85 12:00p + PE TBL 44 03-28-85 12:00p + PROFED TBL 65 03-28-85 12:00p + PROGRAMS COM 11520 03-28-85 12:00p + PROGRAMS HLP 9979 03-28-85 12:00p + SETSYS EXT 11008 03-28-85 12:00p + SETUP BAT 74 03-28-85 12:00p + SYSTEM 84 03-28-85 12:00p + TUTORPIF 369 03-28-85 12:00p + TV COM 43264 03-28-85 12:00p + TV EXT 49972 03-28-85 12:00p + WA TBL 56 03-28-85 12:00p + WELCOME EXT 2560 03-28-85 12:00p + WP TBL 53 03-28-85 12:00p + VENDOR-# DO1 0 07-04-83 12:00a + 42 file(s) 276865 bytes + + Total files listed: + 42 file(s) 276865 bytes + 57344 bytes free + +### Directory of TopView 1.01 (Tutorial) + + Volume in drive A is TUT110784 + + Directory of A:\ + + CALC EXE 56549 11-07-84 12:00p + CALC PIF 369 11-07-84 12:00p + CALC PLB 5133 11-07-84 12:00p + ERROR LIB 8765 11-07-84 12:00p + GASWAP BAT 758 11-07-84 12:00p + INSTRUCT GRA 2540 11-07-84 12:00p + INSTRUCT WRT 2734 11-07-84 12:00p + LESSON1 LIB 56019 11-07-84 12:00p + LESSON2 LIB 10256 11-07-84 12:00p + LESSON3 LIB 10083 11-07-84 12:00p + LESSON4 LIB 43072 11-07-84 12:00p + OCRS PIF 369 11-07-84 12:00p + QUD PNL 121 11-07-84 12:00p + QUIT PNL 139 11-07-84 12:00p + TUTORIAL EXT 6556 11-07-84 12:00p + TUTORIAL PIF 369 11-07-84 12:00p + WASWAP BAT 1190 11-07-84 12:00p + VENDOR-# DO1 0 07-04-83 12:00a + 18 file(s) 205022 bytes + + Total files listed: + 18 file(s) 205022 bytes + 146432 bytes free diff --git a/disks/pc/apps/ibm/topview/README.md b/disks/pc/apps/ibm/topview/README.md new file mode 100644 index 000000000..0fe7e9316 --- /dev/null +++ b/disks/pc/apps/ibm/topview/README.md @@ -0,0 +1,12 @@ +--- +layout: page +title: TopView +permalink: /disks/pc/apps/ibm/topview/ +--- + +TopView +--- + +Information is available for these versions of TopView: + +* [TopView 1.01](1.01/) diff --git a/disks/pc/apps/sunnyhill/omniview/4.30/README.md b/disks/pc/apps/sunnyhill/omniview/4.30/README.md index a7a56d428..a4efa9242 100644 --- a/disks/pc/apps/sunnyhill/omniview/4.30/README.md +++ b/disks/pc/apps/sunnyhill/omniview/4.30/README.md @@ -2,11 +2,25 @@ layout: page title: Omniview 386 4.30 permalink: /disks/pc/apps/sunnyhill/omniview/4.30/ +machines: + - type: pc + id: compaq386 + config: /devices/pc/machine/compaq/deskpro386/vga/4096kb/machine.xml + autoMount: + A: + path: /disks/pc/dos/ibm/3.30/PCDOS330-DISK1-720K.json + B: + path: /disks/pc/apps/sunnyhill/omniview/4.30/OMNIVIEW386-430.json --- Omniview 386 4.30 --- +The COMPAQ DeskPro 386 machine below is recommended for Omniview 386 4.30. +A [directory listing](#directory-of-omniview-386-430) is also provided. + +{% include machine.html id="compaq386" %} + ### Directory of Omniview 386 4.30 Volume in drive A is OMNIVIEW diff --git a/modules/htmlout/lib/htmlout.js b/modules/htmlout/lib/htmlout.js index d4b43c5cd..9981f0efa 100644 --- a/modules/htmlout/lib/htmlout.js +++ b/modules/htmlout/lib/htmlout.js @@ -1464,7 +1464,7 @@ HTMLOut.prototype.getMachineXML = function(sToken, sIndent, aParms, sXMLFile, sS s = m.convertMD(" ").trim(); obj.processMachines(m.getMachines(), m.getBuildOptions(), function doneProcessXMLMachines() { - obj.getMarkdownFile(obj.sFile, sToken, sIndent, aParms, s, true); + obj.getMarkdownFile(obj.sFile, sToken, sIndent, aParms, s, sXMLFile); }); return; } @@ -1689,7 +1689,7 @@ HTMLOut.prototype.getManifestXML = function(sToken, sIndent, aParms) }; /** - * getMarkdownFile(sFile, sToken, sIndent, aParms, sPrevious, fMachineXML) + * getMarkdownFile(sFile, sToken, sIndent, aParms, sPrevious, sMachineFile) * * If sFile exists in the current directory, open it, convert it, and prepare for replacement. * @@ -1699,9 +1699,9 @@ HTMLOut.prototype.getManifestXML = function(sToken, sIndent, aParms) * @param {string} [sIndent] * @param {Array.} [aParms] * @param {string|null} [sPrevious] is text, if any, that should precede the file - * @param {boolean} [fMachineXML] true if a machine.xml file has already been processed by the caller + * @param {string} [sMachineFile] name (if any) of machine.xml file already processed by the caller */ -HTMLOut.prototype.getMarkdownFile = function(sFile, sToken, sIndent, aParms, sPrevious, fMachineXML) +HTMLOut.prototype.getMarkdownFile = function(sFile, sToken, sIndent, aParms, sPrevious, sMachineFile) { var obj = this; @@ -1731,8 +1731,11 @@ HTMLOut.prototype.getMarkdownFile = function(sFile, sToken, sIndent, aParms, sPr } } } else { - var m = new MarkOut(s, sIndent, obj.req, aParms, obj.fDebug, fMachineXML, obj.sExt == "md"); + var m = new MarkOut(s, sIndent, obj.req, aParms, obj.fDebug, sMachineFile, obj.sExt == "md"); s = m.convertMD(" ").trim(); + + if (sMachineFile && m.hasMachines()) sPrevious = null; + /* * If the Markdown document begins with a heading, stuff that into the tag; * it would be cleaner if this replacement could be performed by getTitle(), but unfortunately, diff --git a/modules/markout/lib/markout.js b/modules/markout/lib/markout.js index 9f4be6e4e..af5842e3a 100644 --- a/modules/markout/lib/markout.js +++ b/modules/markout/lib/markout.js @@ -95,10 +95,10 @@ var sDefaultFile = "./README.md"; * @param {Object} [req] is the web server's (ie, Express) request object, if any * @param {Array.<string>|null} [aParms] is an array of overrides to use (see below) * @param {boolean} [fDebug] turns on debugging features (eg, debug comments, special URL encodings, etc) - * @param {boolean} [fMachineXML] true if a machine.xml file has already been processed by the caller + * @param {string} [sMachineFile] name of any machine.xml file already processed by the caller * @param {boolean} [fAutoHeading] true to automatically generate a page heading */ -function MarkOut(sMD, sIndent, req, aParms, fDebug, fMachineXML, fAutoHeading) +function MarkOut(sMD, sIndent, req, aParms, fDebug, sMachineFile, fAutoHeading) { this.sMD = sMD; this.sIndent = (sIndent || ""); @@ -111,7 +111,7 @@ function MarkOut(sMD, sIndent, req, aParms, fDebug, fMachineXML, fAutoHeading) this.sClassImageLabel = this.sClassImage + "-label"; } this.fDebug = fDebug; - this.fMachineXML = fMachineXML; + this.sMachineFile = sMachineFile; this.fAutoHeading = fAutoHeading; this.sHTML = null; this.aIDs = []; // this keeps track of auto-generated ID attributes for page elements, to insure uniqueness @@ -266,6 +266,17 @@ MarkOut.prototype.getMachines = function() return this.aMachines; }; +/** + * hasMachines() + * + * @this {MarkOut} + * @return {boolean} true if machine(s) exist, false if not + */ +MarkOut.prototype.hasMachines = function() +{ + return this.aMachines.length > 0; +}; + /** * getBuildOptions() * @@ -1136,12 +1147,12 @@ MarkOut.prototype.convertMDMachineLinks = function(sBlock) while ((aMatch = reIncludes.exec(sBlock))) { sReplacement = ""; sMachineID = aMatch[2]; - if (!this.fMachineXML && this.aMachineDefs[sMachineID]) { + if (this.aMachineDefs[sMachineID]) { var machine = this.aMachineDefs[sMachineID]; sMachine = machine['type'] || "pc"; sMachineOptions = ((sMachine.indexOf("-dbg") > 0 || machine['debugger'] == "true")? "debugger" : ""); sMachine = sMachine.replace("-dbg", "").toUpperCase(); - sMachineXMLFile = machine['config'] || "machine.xml"; + sMachineXMLFile = machine['config'] || this.sMachineFile || "machine.xml"; sMachineXSLFile = machine['template'] || ""; sMachineVersion = ((machine['uncompiled'] == "true")? "uncompiled" : ""); sMachineParms = machine['parms'] || "";