소스 검색

Clock to dictate speed of 'connected devices'.

master
Bryan Miller 5 년 전
부모
커밋
d669be3206
1개의 변경된 파일37개의 추가작업 그리고 0개의 파일을 삭제
  1. +37
    -0
      chip/clock.js

+ 37
- 0
chip/clock.js 파일 보기

@@ -0,0 +1,37 @@

var TickTime = 1000;
var DT = 0;
var LTime = 0;
var CPUCLK = null:

class Clock{
constructor(){}

get hz(){return Math.floor(1000 / TickTime);}
set hz(hz){
if(hz >= 1)
TickTime = 1000 / hz;
}

get wired(){return (CPUCLK !== null);}
set wire(clk){
if(clk == null || typeof clk === 'function')
CPUCLK = clk;
}

tick(){
let ctime = Date.getTime();
if(LTime !== 0){
DT += ctime - LTime;
while(DT > TickTime){
if (CPUCLK)
CPUCLK();
DT -= TickTime
}
}
LTime = ctime;
}
}


module.exports = Clock;

Loading…
취소
저장