All memory addresses within the Virtual Boy are essentially masked with 0x07FF FFFF as only 27 of the v810 CPU's 32 address lines are used. This leaves only 128 Mbytes of the full 4 GByte address space. Address bits 24 through 26 are used to divide this 128 Mbyte area into 8 16 Mbyte areas. Only certain of the remaining address bits in each memory area are decoded, so memory tends to "mirror" itself within these regions.
Condensed Memory map
| VIP: control registers, VRAM, DRAM | 0×00000000 - 0x0007FFFF |
| MIRRORS | 0×00080000 - 0x00FFFFFF |
| Sound Processor: control registers, data | 0×01000000 - 0x01FFFFFF |
| CPU Peripherals: Wait-states, controller, com port, timer | 0×02000000 - 0x020000xx |
| MIRRORS | 0x020000xx - 0x02FFFFFF |
| not used | 0×03000000 - 0x03FFFFFF |
| Game Pack Internal Expansion Area: unused | 0×04000000 - 0x04FFFFFF |
| Work RAM (WRAM): 64 KBytes | 0×05000000 - 0x0500FFFF |
| MIRRORS | 0×05010000 - 0x05FFFFFF |
| Game Pak RAM area: 16 MBytes maximum | 0×06000000 - 0x06FFFFFF |
| Game Pak ROM area: 16 MBytes maximum | 0×07000000 - 0x07FFFFFF |
Discussion