The XD bus is gated into the D bus for address ranges 00000 - 1FFFF, B8000 - BFFFF, D0000 - FFFFF. I changed that to only B8000 - BFFFF and F0000 - FFFFF using an off the shelf 16V8 though a custom PCB could be built easily. I also had to reprogram the main JR-IDE CPLD to enable RAM for addresses 00000 - 1FFFFF. It already has register support for enabling upper memory in the C segment in 16KB boundaries and in the D and E segments on 32KB boundaries. The result is no more VPU memory for the lower 128K. I doesn't seem to run any faster. My theory is there are additional wait states generated for that range by the VPU, but I will have to confirm later. There are three significant positive benefits: 1) a whopping 176 KB of UMBs! 2) a full 128KB of CGA memory! and last but not least 3) no more 'infamous PCjr memory hole'!!!!!
The bad news is even with this mod, stock MS-DOS 6.22 fails to boot. I'm not sure why. I will have to investigate further. However VCF-SE planning will be taking up most of my weekends for the next few months

If I can get stock MS-DOS 6.22 or FREEDOS running on the JR w/o the memory area reserved for video RAM, that would be a TRUE 736 KB of conventional RAM and 176 KB of UMBs resulting in 912 KB of usable DOS memory, 128 KB of CGA memory, potentially a bootable ROM disk, 330 KB/s transfer rate SSD, and a RTC!! Someone needs to go back in time and tell IBM they could have built a machine that doesn't suck in the future!