2017-03-16 02:02:27 +01:00
|
|
|
"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;
|
|
|
|
|
2017-06-17 19:59:56 +02:00
|
|
|
/**
|
|
|
|
* @const
|
|
|
|
* Enables logging of page faults, quite verbose
|
|
|
|
*/
|
|
|
|
var LOG_PAGE_FAULTS = false;
|
|
|
|
|
2017-03-16 02:02:27 +01:00
|
|
|
|
|
|
|
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 */
|
2017-04-30 00:51:16 +02:00
|
|
|
var ENABLE_ACPI = false;
|
2017-03-16 02:02:27 +01:00
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @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
|
|
|
|
*/
|
2017-04-01 00:09:11 +02:00
|
|
|
var TIME_PER_FRAME = 1;
|
2017-03-16 02:02:27 +01:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @const
|
|
|
|
* How many ticks the TSC does per millisecond
|
|
|
|
*/
|
|
|
|
var TSC_RATE = 8 * 1024;
|
2017-04-02 18:52:51 +02:00
|
|
|
|
|
|
|
|
|
|
|
/** @const */
|
|
|
|
var APIC_TIMER_FREQ = TSC_RATE;
|