| Commit message (Collapse) | Author | Age |
|
|
|
|
| |
This was incrementing higher and higher each time the program was
re-run after halting.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a massive commit that restructures a lot of the library. The
primary change is the implementation of a second Bedrock core using
WebAssembly, which performs much better than the existing JavaScript
core. The JavaScript core has been retained as a fallback for browsers
that don't support WebAssembly.
Benchmarking both cores using the numbers benchmark and with all of the
devices stubbed out in the emulator demonstrates a 40x speedup for the
WebAssembly implementation (going from 4800ms to 120ms).
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, the DOM would be updated every time a complete character
was pushed to the transmission parser by the stream device. This caused
frequent re-renders of the transmission panel and massively slowed down
the emulator.
To fix this, the contents of the transmission parser are now only
flushed to the transmission panel when the state panel updates, which
is currently every 10_000 cycles.
|
|
|
|
|
| |
Clicking the CHECK button will open the bytecode panel if the program
assembles successfully, displaying the assembled bytecode.
|
| |
|
| |
|
|
|
|
|
|
|
| |
Click events on touchscreen devices are handled by the touchstart and
touchend events. These events will now enable and disable the pointer
device, move the pointer position, and press and release the primary
pointer button.
|
|
|
|
| |
This attribute hides the mouse cursor on the program canvas.
|
| |
|
|
|
|
|
| |
This prevents an error from being raised when a program marks these
devices as being allowed to wake the system from sleep.
|
|
|
|
|
| |
Wide-mode conditional jump instructions were reading t as a byte value
instead of as a double value.
|
|
|
|
|
|
| |
Previously, the stack overflowing would cause the stack pointer to point
outside of the stack, which would cause an error in the stack printing
code.
|
| |
|
|
|