diff --git a/index.html b/index.html
index 28cfb6c9..ef600ecb 100644
--- a/index.html
+++ b/index.html
@@ -522,10 +522,10 @@ function require(modname) {
+
-
diff --git a/src/devices.ts b/src/devices.ts
index 3c325200..8ccd9bd6 100644
--- a/src/devices.ts
+++ b/src/devices.ts
@@ -7,7 +7,7 @@ export interface SavesState {
export interface Bus {
read(a:number) : number;
write(a:number, v:number) : void;
- // TODO: readConst?(a:number) : number;
+ readConst?(a:number) : number;
}
export interface ClockBased {
@@ -89,7 +89,7 @@ export interface Interruptable {
// TODO
export interface AcceptsInput {
setInput(key:number, code:number, flags:number) : void;
- loadControlsState(cs:CS);
+ loadControlsState(cs:CS) : void;
saveControlsState() : CS;
}
diff --git a/src/vlist.js b/src/vlist.ts
similarity index 96%
rename from src/vlist.js
rename to src/vlist.ts
index 8be2b451..287f39dc 100644
--- a/src/vlist.js
+++ b/src/vlist.ts
@@ -70,7 +70,7 @@ function VirtualList(config) {
function onScroll(e) {
var scrollTop = e.target.scrollTop; // Triggers reflow
if (!lastRepaintY || Math.abs(scrollTop - lastRepaintY) > maxBuffer) {
- var first = parseInt(scrollTop / itemHeight) - screenItemsLen;
+ var first = (scrollTop / itemHeight) - screenItemsLen;
self._renderChunk(self.container, first < 0 ? 0 : first);
lastRepaintY = scrollTop;
}
@@ -141,17 +141,17 @@ VirtualList.createContainer = function(w, h) {
c.style.height = h;
c.style.overflow = 'auto';
c.style.position = 'relative';
- c.style.padding = 0;
+ c.style.padding = '0';
c.style.border = '1px solid black';
return c;
};
VirtualList.createScroller = function(h) {
var scroller = document.createElement('div');
- scroller.style.opacity = 0;
+ scroller.style.opacity = '0';
scroller.style.position = 'absolute';
- scroller.style.top = 0;
- scroller.style.left = 0;
+ scroller.style.top = '0';
+ scroller.style.left = '0';
scroller.style.width = '1px';
scroller.style.height = h + 'px';
return scroller;