MSX2bootAn MSX2 boot screen

I’ve decided to expand the scope of this blog now to look beyond my personal period of Commodore 64 hell of 1984-1985 to what happened after that and what might have been. This is all still to do with programming, as well as creating graphics and sound, though.

I must just briefly mention the last post by TMR of the blog , though. In his de de debunk called “Intro to BASIC – The Aftermath” on he had the cheek to claim that it wasn’t possible to write any commercial software in BASIC, in spite of the “Cassette 50” compilation he mentioned, the many BASIC type in listings that were published while I owned a C64, as well as him often reminding me about a compiler I never even heard of at the time I owned a C64, and ignoring my previous revelation that there was an excellent course published in an MSX magazine which taught me how to convert between different dialects of BASIC, including converting screen coordinates. He then repeated his usual delusions that the Commodore 64 was something other than a set of Commodore PET ROMs cobbled together with 64K of RAM chips, plus a graphics chip and a sound chip tacked on to this collection of mass produced trash. The fact is it WASN’T any more than that. End of story!

The following information has been compiled from my memories of a computer show in London, probably at Earl’s Court Olympia, as well as from reading the British magazines “MSX User”, “MSX Computing”, a SONY manual about MSX BASIC 2.0, as well as the Dutch “MSX Computer Magazine” of the mid 1980’s. I also used to own a Yamaha CX5M Music Computer, which was one of the original MSX or MSX1 standard computers and WAS released in Britain as well as the USA. It certainly isn’t a collection of rumours or half truths “cherry picked off the Internet”!

The original MSX standard had been well designed around tried and tested technology, but revamped with the addition of external, easily accessible, cartridge/expansion slots, instead of the internal expansion slots found on the Apple ][ and IBM PC computers, although Apple ][ and IBM PC owners preferred internal cards. They wiped the floor with the C64’s “user port”. It was equipped with MSX BASIC 1.0, which was even more powerful than BASICA or GW-BASIC on the IBM PC, supported the MSX hardware configuration (unlike Commodore BASIC V2 on the C64), and could even perform interrupts from BASIC, while C64 owners like me were left wondering WTF an IRQ was. IMHO MSX BASIC is one of the best BASICs, sharing joint first place with BBC BASIC (which had procedures, long variable names, and REPEAT… UNTIL loops), and Amstrad’s Locomotive BASIC (with long variable names and WHILE… WEND loops, as well as interrupts). MSX BASIC lacks procedures and long variable names, though. Of course, it was essential in these early days of 8 bit home computers that all computers were supplied with a programming language that was easy to learn and supported their hardware. People unlucky enough to buy a computer with an unnecessarily complicated language, or a language which didn’t support their computer’s hardware would probably be put off the whole idea of programming. Once this standard had been set in 1983 and established, it was possible to take things much further with the backwards compatible MSX2, including more detailed graphics, a 512 colour palette, 80 column text, more video RAM or VRAM, and more system RAM. One of the main features was that it was backwards compatible, meaning that users of the original MSX1 computers wouldn’t have to forget about or throw away their MSX1 peripherals or software, unlike with most other computers of the time.

The official minimum specs for MSX2 were as follows. At least 64K main RAM (but sometimes supplied with 256K RAM), at least 64K VRAM (often supplied with 128K VRAM), 32K BASIC/BIOS and 16K subROM with MSX BASIC 2.0 or 2.1, Yamaha V9938 VDP video chip allowing SCREEN modes of 0-8, with up to 256 colours on screen at once, or up to 512×212 graphics with 16 colours from a palette of 512, as well as 16 colour multicoloured sprites, and real time clock with rechargeable battery. The original Atari 520ST only has 3 graphics modes of 320×200 with 16 colours from a palette of 512 colours , 640×200 with 4 colours from a palette of 512 colours, and 640×400 in mono. A disk drive was often built in to MSX2 computers, but not as standard. It really pushed the 8 bit Z80 CPU to the limit, until MSX2+ that is! This meant that it wasn’t necessary to buy a 16 or 32 bit computer to perform a whole host of tasks, but there was a lot of hype at the time about why people “needed” 16 bit or 32 bit computers, as well as criticisms that the IBM PC with an 8088 CPU was actually only 8 bit, while the Apple MacIntosh, Atari ST, and Amiga with the 68000 CPU were “only” 16 bit instead of 32 bit. In all these cases it was because of their data bus connections, instead of the internal CPU registers’ width.

This Philips produced MSX2 demo could have sold more MSX2 computers than the demos of “Antarctic Adventure” did for MSX1

I went to a computer show in London where MSX2 was shown by Philips as well as Toshiba, and where I got video digitised in near photographic quality by Philips. After this, there was no sign in Britain of MSX2, except a few articles in the magazines “MSX Computing”, “MSX User”, and possibly some other magazines. MSX had set a new standard, although it was a mixture of very advanced BASIC combined with tried and tested hardware. After setting this standard, they were free to upgrade it, so they did. I managed to touch and even write a short MSX BASIC program on a Japanese spec Toshiba MSX2, then I checked that it didn’t respond to commands in Japanese characters. I was told these were for word processing. I also wrote a short program on a Philips MSX2, which used the display mode SCREEN 7 or SCREEN 8.

Unfortunately, I had hardly any information about the new MSX BASIC 2.0 commands when I saw those computers at the show, but I’ve recently found out about commands such as COLOR=(n,r,g,b) , which assigns any of the 512 colours in the palette to colour n, where the values r, g, and b are in the range 0-7. There’s also COLOR SPRITE$(n)= , and COLOR SPRITE which allow multicoloured sprites with different colours on each of their 8 or 16 horizontal lines, SET PROMPT “message” to change the BASIC prompt from “Ok” to whatever the user wants. Meanwhile, C64 and even C128 owners could only dream of doing things like this. People would have had to buy a much more expensive Amiga A1000 computer to surpass MSX2 graphics. At this time, even the Atari ST cost £749 from Silica Shop and US$799 in the USA, while the Amiga cost US$1,295, or US$1,395 with a monitor in the USA. I haven’t been able to find any mention of the Amiga’s price in the UK at that time, but it was common practice to just replace the $ sign with a £, followed by the same figure, or a slightly lower figure. Of course, I should remind people at this point, that the Amiga wasn’t developed by Commodore, it was designed by ex Atari engineers, including the legendary Jay Miner, who always liked to try and push hardware to the limit, the antithesis of Jack Tramiel. It was a “super Atari” computer, which Commodore didn’t know how to market. Obviously, no price was set for MSX2 computers in any English speaking country, because they weren’t released there, but they used cheaper 8 bit chips, including 8 bit RAM chips, and could be plugged into a TV without an external RF modulator. Prices in the Netherlands were listed as fl.1,949 for early Philips and fl. 2,500 (fl.=Gulden or Guilder, the pre Euro Dutch currency) for early Sony MSX2 computers (source: Dutch “MSX Computer Magazine” No. 7), but I’m not sure what the exchange rates were at that time.

Mixing external video signals with MSX graphics had already been thought of in MSX1 when they chose to make COLOR 0 out of its 16 colours transparent. In spite of the MSX1 Pioneer PX7 with its laser disc, the greater resolution of MSX2 made this more practical. Video pictures could be grabbed and edited at resolutions of 512×212, or even 512×424 with interlace. There’s even a BASIC command COPY SCREEN to deal with it! This made video editing applications, later called genlocking, possible. You can even copy sections from part of a screen to another part of the screen, or part of one screen onto part of another screen using COPY (x1,y1) to (x2,y2), TO (x3,y3),[destination page]. The SET PAGE [display page],[active page] command also makes it possible to hold 2-4 graphics screens, depending on their resolution, in VRAM and switch between them, to draw screens before displaying them, or to produce animation, like on the Amiga! A small minority of C64 fanatics fluent in 6502 or 6510 Assembler may be able to do something similar.

More MSX2 standard features include setting up a RAM disk with CALL MEMINI. This is also a standard feature on the Amiga. The position of the screen display could also be set without a special monitor using the command SET ADJUST (X,Y), while the command SETSCREEN saves all the display adjustments made by the user for future use.

There are also commands to customise the system such as SET PASSWORD “password”, SET BEEP , to change the standard BEEP sound to any of 4 sounds and 4 volume settings, and SET TITLE “title”,[colour] to display a title below the MSX logo on power up or reboot, as well as to set the colours for the logo. This information is stored in battery backed up RAM. This facilities weren’t even built in to the Amiga A500!

Years ago, PC compatible computers surpassed the capabilities of MSX2, but even now you can have lots of fun installing an MSX emulator such as openmsx, BlueMSX, or fMSX on your PC and experiencing the whole attitude behind MSX, which was firmly aimed at users in the home for fun, leisure and organising their lives, perhaps running a small business, not at big business users in offices.

I recently downloaded and read a book called “The MSX Standard: The New Computers” by Robert Chapman Wood (TAB Books, USA, 1985). The author had spent a lot of time studying MSX from its beginnings in 1983 and said that based on his understanding of the market he thought that most MSX computers released in the USA would be MSX2 instead of MSX1. He described MSX-DOS features including sharing data with computers running MS-DOS, and running CP/M software. Little did he know that, thanks to the price wars started by Jack Tramiel, as well as some other more obscure tactics that could be described as “restraint of trade”, only the Spectravideo SVI-728 and Yamaha CX5M (both MSX1) computers would ever be released in the USA.

I plan to continue this series of posts about MSX2 computers, but first of all I need to find out more about MSX2.

Finally, here’s a demo of the software Philips Designer running on an MSX2 computer, showing how up to 256 colours can be selected from. It clearly shows how MSX2 graphics wipe the floor with the Commodore 64 and the Atari 520ST. No C64/Spectrum/MSX1 colour bleed here!

Posted October 27, 2014 by C64hater in Uncategorized


Subscribe to comments with RSS.

  1. «C64 owners like me were left wondering WTF an IRQ was»: I learnt what an IRQ is in the Commodore 64, and I learnt it in the correct way: in assembly language 🙂

    Commodre 128 had some type of interrupts in his C128 BASIC (with the COLLISION command), but really it isn’t the same to learn that in BASIC: it is much better in assembly as BASIC in those machines is too slow to learn the incredible possibilities IRQ opens. Where you can see the IRQ marwell and posibilities, with this computers, it is in assembly.

    Even I tryed interrupts in BASIC with an Amiga, and I was not satisfied, and the Amiga was much more powerfull computer than 8 bits machines.

    Really, the best you can learn about programming with small 8 bit computers is assembly, and the worst is BASIC, and that counts for near all of them even if BASIC has no graphics/sounds commands, etc, or if it has those commands (I put the BBC procedural BASIC in another basket, and even for procedural programming there are better languages to learn).

    I am very happy to begin with a Commodore 64/128, as I learnt all the fundamentals about computer architecture with it. I think this is a valuable knowledg -not like stupid BASIC- because computer architecture is fundamental to understand how a computer works. And and 8 bit machine is good for that because they are simple and you can experiment a lot of in low levl; In the opposite way today computers are too much complex, and very little people study how they works at low level.

    Sorry but you were wrong with your obssesion with BASIC: BASIC is interesting only to learn some very basic programming, to make very small and simple programs, and to move on to better languages and uses. In 8 bit computers, better language and uses was assembly language.

  2. About MSX-2: It was dead for its time: when it arrived it was late for an 8 bit computer like MSX-2 as 16 bit generation computing was too here. Atari ST, with a powerfull Motorola 68000 -what a good CPU for its time- was obiusly a much better computer. And 2 years later we had even the Amiga 500 (I don’t cite original Amiga 1000 of 1985 because it was too expensive to compete with most home computers).

    And original MSX (MSX 1) simply coud not compete with other computers in western world. MSX was totally incapable of compiting with Commodore 64 in USA, Germany and other countries.

    I think MSX only was really successful in Japan, a country that is like of other planet.

    A friend of mine had an MSX, other had one ZX Spectrum, and althought MSX is much better machine than Speccy, the MSX owner had the worst part (very few titles, and most of them very bad executed for MSX hard, as they were ports of Spectrum soft).

    Even today, the best 8 bit computers for me are the Commodore 64/128 and the ZX Spectrum, because I value a computer no only for its hard but for ITS LIVE: how many good software, books, magazines, groups, etc, etc, it has. When I was teen I laughed at Spectrim very mcuh, but now I love it, and if I had to choose only 2 8 bit computers to own, I would choose Commodore 128 and ZX Spectrum.

  3. MSX1 and MSX2 had tons of good games. Alot did come from Konami software. Also MSX had a very extended form of basic and alot of commercial games written in basic software was released.

    • Thanks so much for your comment Magnus! Obviously MSX had a very extended version of Microsoft BASIC and MSX BASIC V2.0 was even further extended. Please will you point out some of the commercial games written in MSX BASIC?

      • SVI had a whole section of games written in MSX-BASiC. Everything from spelling tutors to action games. For example golf, tetra, cobra, cross force, ghost trap, jumping jack, spectraword and way more. Some extremly bad and even some gems.

  4. “I think MSX only was really successful in Japan, a country that is like of other planet.”

    Hi, I just want to say this, besides Japan, the MSX was quite popular here in Spain, but the same in France, the Netherlands, Brazil, Chile, Argentina and even in the former Soviet Union. By the way, I always had curiosity and sympathy for the C64, but only had a single friend who owned one at that time. Greetings to all.

  5. Thanks a lot for your comment Diekus! Unfortunately I didn’t approve it for so long because WordPress thought I was posting as another of my identities, but no one is allowed to know who else I am.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: