MSX 35th anniversary: 萌SX update

As we celebrate the 35th anniversary of MSX, the 萌SX (MoSX) project progresses steadily. This TNI project aims to define and implement the next generation MSX standard. Previously, we mentioned the 32bit Z80/R800 compatible CPU, and we presented the 萌SX system architecture at the Nijmegen MSX Fair 2018. Of course, everything is backwards compatible with MSX! Now, the first steps are being taken towards implementing these designs in VHDL. Read on for more information on the features of 萌SX!

The 32bit CPU at the heart of 萌SX is called the 萌80 (Mo-eighty). It provides 4GB of address space, 3GB of which is linear address space. This 3GB area may be put under control of a Virtual Memory Manager in the future. Comparatively, the Z80 in MSX only has a 64kB (linear) address space. The greater address space allows software developers to more easily write programs that handle data sizes larger than 32kB (ie. pretty much any data).

The standard MSX Memory Management Unit is comprised of the PPI chip, which provides slots, and the Memory Mapper, which provides RAM banking. In 萌SX both of these are integrated on the CPU itself. This allows the 萌80 CPU to automatically switch slots and memory mapper segments! This greatly reduces the burden on the programmer, and frees him from tedious and error-prone work. Additionally, 萌SX increases the amount of slots from a maximum of 16 to a whopping 64 slots.

Compared to the Z80, the 萌80 CPU has an extra General Purpose Register, allowing programmers to more easily design algorithms and fast loops. It also has a shadow version of each General Purpose Register. This puts the readily available amount of registers at 16, compared to Z80's 10. Additionally, 萌80 provides 4 complete sets of its registers, to enable fast task switching.

Being a 32bit CPU, the General Purpose Registers on the 萌80 are expanded to 32bit. Contrary to previous attempts of creating a 32bit Z80, the 萌80 does not unnecessarily force code or data size increases. The instruction set is greatly expanded and made more orthogonal. This makes the 萌80 CPU more intuitive for human programmers as well as more suitable as a compiler target. We think it's a joy to program for!

All in all, 萌SX is shaping up quite nicely and promises a big step forwards for the MSX system. At TNI, we are very excited about the solutions we have invented to create a powerful, yet backwards compatible, MSX generation! What about you? Let us know!