Expanding Beyond 64kb of Memory with Bank Switching (16-Bit VM in JavaScript 012) @LowByteProductions
Expanding Beyond 64kb of Memory with Bank Switching (16-Bit VM in JavaScript 012)  @LowByteProductions
Uploaded July 2020 | Updated September 2026, 2 weeks ago
In this episode we're learning about memory bank switching - a technique common in the retro game console days - that allows us to address more memory than the limited address space that 16 bits provides!

=[ ℹ About ℹ ]=


This series is all about building a powerful virtual machine in JavaScript with the following features:

- A flexible, extensible, register-based virtual machine
- Support for signed, unsigned and floating point operations
- A call stack
- Interrupt capabilities
- Ability to do memory mapping for IO
- An assembly language with macro and module support
- A higher level, C like language. We'll use and expand the library from the parser combinators from scratch series
- And finally, to be able to take the whole thing into the browser and extend it to create a sort of fantasy console - an emulator for a machine that never existed

- 💌 Updates to your inbox: tinyletter.com/lowleveljavascript
- ⭐️ Patreon: patreon.com/lowleveljavascript

- Series Playlist: youtube.com/playlist?list=PLP29wDx6QmW5DdwpdwHCRJsEubS5NrQ9b&playnext=1&index=1
- Github Repo: github.com/LowLevelJavaScript/16-Bit-Virtual-Machine


- Bank Switching: en.wikipedia.org/wiki/Bank_switching
- 16BitVM Episode 5: youtu.be/hLYGTpvoMgE


=[ 🔗 Links 🔗 ]=

- Playlist: youtube.com/playlist?list=PLP29wDx6QmW5DdwpdwHCRJsEubS5NrQ9b&playnext=1&index=1
- Github Repo: github.com/LowLevelJavaScript/16-Bit-Virtual-Machine
Expanding Beyond 64kb of Memory with Bank Switching (16-Bit VM in JavaScript 012)Worlds Simplest Bootloader :: Bare Metal Programming Series 4The End Of Low Level JavaScript[stream] Driver For SPI Flash + Bus Pirate in TypeScript16-Bit Virtual Machine in JavaScript 001First Successful Firmware Update! :: Bare Metal Programming Series 11Building A Fantasy Game Console Emulator: System Overview and Graphics PipelineSimple Timer API :: Bare Metal Programming Series 9[stream] File System Hacking: FAT32 Deep DiveWhat is Memory Mapped I/O? (16-Bit VM in JavaScript 005)Unpacking squished bits (Bit Packer part 2)Fixed-point math is better than floating point (sometimes)
Low Byte Productions |

Expanding Beyond 64kb of Memory with Bank Switching (16-Bit VM in JavaScript 012)

SHARE TO X SHARE TO REDDIT SHARE TO FACEBOOK WALLPAPER