Some Jekyll tweaks for developer/debug mode

This commit is contained in:
Jeff Parsons 2016-02-09 14:55:16 -08:00
commit 964eed08ea
5 changed files with 105 additions and 6 deletions

View file

@ -2,3 +2,90 @@ developer: true
pcjs:
compiled: false
#
# Since pcjs.compiled is false, the following scripts will be included instead, in the order listed;
# and since nodebug.js is included immediately after defines.js, DEBUG code is disabled by default.
#
# Note that the Node web server is considerably smarter than the Jekyll templates we're using; Node
# will automatically skip (or include) nodebug.js depending on whether the server is in DEBUG mode,
# and will include nodebugger.js (and skip debugger.js) if DEBUGGER is disabled. The Node server
# also ensures that only one uncompiled copy of each of JavaScript file is included on a given page,
# regardless how many different machines are loaded on the page.
#
# But, you're a developer, otherwise you wouldn't be starting Jekyll like this:
#
# bundle exec jekyll serve --config _config.yml,_developer.yml
#
# so deal with it! ;-)
#
# NOTE: If you're debugging PCjs source code, you'll probably be happier using a JetBrains IDE like WebStorm,
# launching PCjs pages via Node rather than Jekyll, and using the JetBrains Chrome debugger plug-in.
#
pc_scripts:
- /modules/shared/lib/defines.js
- /modules/shared/lib/nodebug.js
- /modules/shared/lib/diskapi.js
- /modules/shared/lib/dumpapi.js
- /modules/shared/lib/reportapi.js
- /modules/shared/lib/userapi.js
- /modules/shared/lib/strlib.js
- /modules/shared/lib/usrlib.js
- /modules/shared/lib/weblib.js
- /modules/shared/lib/component.js
- /modules/pcjs/lib/defines.js
- /modules/pcjs/lib/x86.js
- /modules/pcjs/lib/interrupts.js
- /modules/pcjs/lib/messages.js
- /modules/pcjs/lib/panel.js
- /modules/pcjs/lib/bus.js
- /modules/pcjs/lib/memory.js
- /modules/pcjs/lib/cpu.js
- /modules/pcjs/lib/x86seg.js
- /modules/pcjs/lib/x86cpu.js
- /modules/pcjs/lib/x86fpu.js
- /modules/pcjs/lib/x86func.js
- /modules/pcjs/lib/x86ops.js
- /modules/pcjs/lib/x86op0f.js
- /modules/pcjs/lib/x86modb.js
- /modules/pcjs/lib/x86modw.js
- /modules/pcjs/lib/x86modb16.js
- /modules/pcjs/lib/x86modw16.js
- /modules/pcjs/lib/x86modb32.js
- /modules/pcjs/lib/x86modw32.js
- /modules/pcjs/lib/x86modsib.js
- /modules/pcjs/lib/chipset.js
- /modules/pcjs/lib/rom.js
- /modules/pcjs/lib/ram.js
- /modules/pcjs/lib/keyboard.js
- /modules/pcjs/lib/video.js
- /modules/pcjs/lib/parallelport.js
- /modules/pcjs/lib/serialport.js
- /modules/pcjs/lib/mouse.js
- /modules/pcjs/lib/disk.js
- /modules/pcjs/lib/fdc.js
- /modules/pcjs/lib/hdc.js
- /modules/pcjs/lib/debugger.js
- /modules/pcjs/lib/state.js
- /modules/pcjs/lib/computer.js
- /modules/shared/lib/embed.js
c1p_scripts:
- /modules/shared/lib/defines.js
- /modules/shared/lib/nodebug.js
- /modules/shared/lib/dumpapi.js
- /modules/shared/lib/reportapi.js
- /modules/shared/lib/strlib.js
- /modules/shared/lib/usrlib.js
- /modules/shared/lib/weblib.js
- /modules/shared/lib/component.js
- /modules/c1pjs/lib/defines.js
- /modules/c1pjs/lib/panel.js
- /modules/c1pjs/lib/cpu.js
- /modules/c1pjs/lib/rom.js
- /modules/c1pjs/lib/ram.js
- /modules/c1pjs/lib/keyboard.js
- /modules/c1pjs/lib/video.js
- /modules/c1pjs/lib/serial.js
- /modules/c1pjs/lib/disk.js
- /modules/c1pjs/lib/debugger.js
- /modules/c1pjs/lib/computer.js
- /modules/shared/lib/embed.js

View file

@ -11,8 +11,20 @@ machines:
Microsoft Windows 95 (First Retail Release)
---
Windows 95 was the successor to Windows 3.1 and included a number of important new features:
* Support for 32-bit Windows applications
* Long mixed-case filenames (up to 255 characters)
* GUI improvements (e.g., Explorer, **Start** button, Taskbar, shortcuts)
It was also first version of Windows that *required* an 80386 CPU (preferably a D-stepping or later).
Windows 95 was released to manufacturing on July 14, 1995 and went on sale at midnight on August 24, 1995.
More information about the Windows 95 demo below is available in the [PCjs Blog](/blog/2015/09/21/).
It is shown running below, following a "Compact Installation" on a 68Mb hard disk. Before the machine can
start, it must download the disk image, which may take a minute or two, depending on the speed of your
internet connection.
More information about this Windows 95 demo is available in the [PCjs Blog](/blog/2015/09/21/).
{% include machine.html id="deskpro386" %}

View file

@ -1894,8 +1894,8 @@ HTMLOut.prototype.processMachines = function(aMachines, done)
}
}
/*
* Step 2: If there's a "debugger.js" source file in the list of uncompiled files, we need to remove it,
* which we do by using the Array splice() method, removing the 1 matching element from the array.
* Step 2: If there's a "debugger.js" source file in the list of uncompiled files, we need to remove
* it, which we do by using the Array splice() method, removing the 1 matching element from the array.
*/
for (i = 0; i < asFiles.length; i++) {
if (asFiles[i].indexOf("/debugger.js") >= 0) {

View file

@ -93,7 +93,7 @@ var TYPEDARRAYS = (typeof ArrayBuffer !== 'undefined');
* TODO: BACKTRACK support is currently completely disabled until we have a chance to investigate the problem
* discussed in Bus.addBackTrackObject().
*/
var BACKTRACK = !COMPILED;
var BACKTRACK = !COMPILED && DEBUG;
/**
* @define {boolean}
@ -127,7 +127,7 @@ var I386 = true;
*
* COMPAQ386 enables Compaq DeskPro 386 support. Requires I386 support as well (duh).
*/
var COMPAQ386 = true;
var COMPAQ386 = I386;
/**
* @define {boolean}

View file

@ -39,7 +39,7 @@
* so that all DEBUG-only code will be removed by the compiler.
*
* However, when we're in "development mode" and want to run uncompiled code without any DEBUG-only
* code, we must arrange for this additional file, nodebug.js, to be loaded as early as possible,
* code, we must arrange for this additional file (nodebug.js) to be loaded immediately after defines.js,
* which will then set DEBUG to false at runtime.
*/
DEBUG = false;