Now that the dev environment and all the goodness of pipelines, testing, etc. are setup we can start getting into our development process of looking at the Z80 code and the required functions for the MSX
At the heart of the MSX system is the Yamaha V9938 and a 21.47727 MHz cristal oscillator. From there it dries the CPU clock at 1/6 the clockrate, 3.579 MHz. The 9938 is a video processor chip genereally backwards compaitble with the TMS-9918 and TMS-9928, but was built specifically for the MSX standard. In addition to those two core chips, there's RAM and ROM provided, along with specific VideoRAM, a keyboard with at least 70 keys, an AY-3-8910 sound generator, an RP5C01 compatible real-time clock, and at least one cartridge slot or expansion bus, two general purpose 9 pin ports, one connector for a tape recorder and one printer interface
There are other optional features like memory mappers, kanji display ROMs, floppy drive interfaces, YM2413 synthesizer chips, MSX-AUDIO chips, a UART chip, and a Serial communication chip/interface
The MSX itself is not a single computer, but rather it's a specification for machines. Many different companies manufactured MSX machines, similar to how many companies manufactured IBM-PC compatibles (though MSX was designed to be like this, unlike IBM's PC line). The MSX platform was also designed around off-the-shelf components (at the time) so that no one manufacturer could rush ahead or strangle the market. Eventually those off-the-shelf components would get consolidated into single packages to reduce costs and complexities in the machines themselves, but even still many of those chips would still be found in competing products
For the initial stages of this emulator, there are two main concerns that are floating around
After a lot of time spent researching and planning a plotting and hitting wall after wall, it became clear what the next step should be, and that's to really just get the rest of our environment up and running so we can start to even look at different things and get to a state where we have the finished skeleton
There are a few things in the checklist to tackle: