From 65a75d4fe397ec271d335e5d125e045b754256f9 Mon Sep 17 00:00:00 2001 From: Fabian Date: Thu, 29 Apr 2021 17:25:20 -0500 Subject: [PATCH] Additional assertions for the return value of mmap_read8 and mmap_read16 --- src/memory.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/memory.js b/src/memory.js index f02abfe1..60445e4f 100644 --- a/src/memory.js +++ b/src/memory.js @@ -3,7 +3,9 @@ CPU.prototype.mmap_read8 = function(addr) { - return this.memory_map_read8[addr >>> MMAP_BLOCK_BITS](addr); + const value = this.memory_map_read8[addr >>> MMAP_BLOCK_BITS](addr); + dbg_assert(value >= 0 && value <= 0xFF); + return value; }; CPU.prototype.mmap_write8 = function(addr, value) @@ -15,8 +17,9 @@ CPU.prototype.mmap_write8 = function(addr, value) CPU.prototype.mmap_read16 = function(addr) { var fn = this.memory_map_read8[addr >>> MMAP_BLOCK_BITS]; - - return fn(addr) | fn(addr + 1 | 0) << 8; + const value = fn(addr) | fn(addr + 1 | 0) << 8; + dbg_assert(value >= 0 && value <= 0xFFFF); + return value; }; CPU.prototype.mmap_write16 = function(addr, value)