Improve const.js

Split into const/config
Document some configuration
Remove excessive newlines
This commit is contained in:
copy 2017-03-15 20:02:27 -05:00
parent 18e71dedb9
commit b86283b0c9
3 changed files with 55 additions and 44 deletions

50
src/config.js Normal file
View file

@ -0,0 +1,50 @@
"use strict";
/*
* Compile time configuration, some only relevant for debug mode
*/
/**
* @define {boolean}
* Overridden for production by closure compiler
*/
var DEBUG = true;
/** @const */
var LOG_TO_FILE = false;
/**
* @const
* Enables logging all IO port reads and writes. Very verbose
*/
var LOG_ALL_IO = false;
var LOG_LEVEL = LOG_ALL & ~LOG_PS2 & ~LOG_PIT & ~LOG_VIRTIO & ~LOG_9P & ~LOG_PIC &
~LOG_DMA & ~LOG_SERIAL & ~LOG_NET & ~LOG_FLOPPY & ~LOG_DISK;
/** @const */
var ENABLE_HPET = DEBUG && false;
/** @const */
var ENABLE_ACPI = DEBUG && false;
/**
* @const
* How many cycles the CPU does at a time before running hardware timers
*/
var LOOP_COUNTER = 11001;
/**
* @const
* How often, in milliseconds, to yield to the browser for rendering and
* running events
*/
var TIME_PER_FRAME = 8;
/**
* @const
* How many ticks the TSC does per millisecond
*/
var TSC_RATE = 8 * 1024;

View file

@ -1,17 +1,6 @@
"use strict";
/** @define {boolean} */
var DEBUG = true;
/** @const */
var LOG_TO_FILE = false;
/** @const */
var LOG_ALL_IO = false;
var
/** @const */ LOG_ALL = -1,
/** @const */ LOG_NONE = 0,
@ -40,13 +29,6 @@ var
/** @const */ LOG_9P = 0x400000;
var LOG_LEVEL = LOG_ALL & ~LOG_PS2 & ~LOG_PIC & ~LOG_PIT & ~LOG_RTC & ~LOG_VIRTIO & ~LOG_9P &
~LOG_DISK & ~LOG_DMA & ~LOG_VGA & ~LOG_SERIAL & ~LOG_NET;
/** @const */
var CPU_LOG_VERBOSE = false;
/**
* @const
* @type {Array<Array<string|number>>}
@ -85,14 +67,6 @@ var
var
/** @const */
ENABLE_HPET = !DEBUG && false,
/** @const */
ENABLE_ACPI = !DEBUG && false;
var
// flags register bitflags
/** @const */ flag_carry = 1,
@ -187,16 +161,7 @@ PSE_ENABLED = 128,
/** @const */ reg_tr = 6, // task register
/** @const */ reg_ldtr = 7, // local descriptor table register
/** @const */ LOOP_COUNTER = 11001,
/** @const */ TIME_PER_FRAME = 8;
/** @const */
var OP_TRANSLATION = false;
/** @const */ reg_ldtr = 7; // local descriptor table register
var
/**
@ -205,7 +170,6 @@ var
*
* @const
*/
MMAP_BLOCK_BITS = 17,
/** @const */
MMAP_BLOCK_SIZE = 1 << MMAP_BLOCK_BITS;
@ -311,12 +275,6 @@ var IA32_MCG_CAP = 0x179;
var MSR_PKG_C2_RESIDENCY = 0x60D;
/** @const */
var TSC_RATE = 8 * 1024;
/** @const */ var TSR_BACKLINK = 0x00;
/** @const */ var TSR_CR3 = 0x1C;
/** @const */ var TSR_EIP = 0x20;
@ -340,7 +298,6 @@ var TSC_RATE = 8 * 1024;
/** @const */ var TSR_LDT = 0x60;
/** @const */
var PREFIX_MASK_REP = 0b11000;
/** @const */

View file

@ -1,5 +1,9 @@
"use strict";
/** @const */
var CPU_LOG_VERBOSE = true;
// Resources:
// https://pdos.csail.mit.edu/6.828/2006/readings/i386/toc.htm
// https://www-ssl.intel.com/content/www/us/en/processors/architectures-software-developer-manuals.html