par NYYRIKKI on 01-06-2014, 14:52

Before the MSX standard was established Spectravideo made a few computer models (SVI-318 and SVI-328) that were used as a base for the MSX standard. They practically had all same components that MSX had, but they were connected to each other in a different way.

Spectravideo probably thought that MSX standard would end up being much closer to their computers, so they were very proud to tell the world that they were on the cutting edge of defining a new world standard and soon the world would be using similar computers. What I learned only lately was that they actually openly claimed that the SVI-328 would be a MSX compatible computer. However the truth in the end was quite different. SVI had different memory handling, a different BIOS, a different version of BASIC and so on. SVI not only used different I/O ports, but it also used different I/O ports for reading and writing, while MSX used less number of ports. Also practically all connectors were different, including the tape drive, the joystick ports, the printer port and the cartridge port.

The big mouth of Spectravideo's marketing department probably made very many customers angry as they had spent a lot of money for computer that ended up being totally incompatible with the MSX-standard. Later Spectravideo tried to fix things by releasing the SVI-606 MSX Game adapter. This was however more like a joke. You needed MSX-joysticks and a cassette drive to use it and it had its own keyboard that looked like one from the Casio wrist watch. Letters were physically placed in alphabetical order and it didn't even work with too much software.

Hobbyists ported some commercial MSX games to SVI and they even ported MSX-BASIC. But in the end users could still only enjoy an extremely limited number of MSX software products.

This story made me feel bad, so I thought what could I do to improve these betrayed SVI users' lives? First I ported Chuck Yeager's Advanced Flight Trainer and Red Zone to SVI, but very soon after starting I realized that this is boring and quite a robotic job. This approach would make me die of old age before I could get anything remarkable done.

Therefore I ended up to write "MSX ROM loader for SVI". In the hart of this project there is very custom version of MSX C-BIOS that is adapted to run on SVI and to translate SVI hardware for MSX programs. The other important module of this program is what I tend to call "Self aware, self modifying artificial intelligence." or simply just NYYRIKKI emulator :) This part of the code is responsible for separating program code from other type of data (such as music or graphics) and doing the programming effort to port the code from MSX to SVI. Most of the patching is done before game is started and rest of the routines are patched during game time.

With this program most of the MSX 8/16/32KB ROM games are now playable on SVI. The program does not however have MSX-BASIC included, so for BASIC games you still need the old MSX-BASIC emulator.

Now that the ground work is done, maybe in the future we can see our favorite MSX games running on other platforms as well... you never know...

NOTE: this tool runs on Windows.

Pièce jointeTailleTéléchargementsLast download
sviromload1.1.zip405.09 Ko655il y a 1 jour 13 heures

Commentaires (1)


Enlighted (6033)

Portrait de NYYRIKKI

15-12-2014, 08:46

About the note: Only the example script that generates cassette image out of program & ROM-file is made for Windows. Similar tools can be found for other platforms as well, but they are not included in package.