My start with the MSX


Note: this article was published originally as the first chapter in my Relearning MSX series.

When I was around nine or ten years old, my uncle Jose brought me my first computer: a Sanyo MPC-200, an MSX. I loved these computers, and even now I still have an old Sony MSX2 computer that I use from time to time.

Getting my first MSX computer was probably the most important event in my life, even though I still didn't know at the time. That's how I got involved with computers, defining my career. I started studying Japanese at around age fifteen in order to be able to read MSX Magazine, which I bought through an importer that brought it from Japan. That's how I ended up moving to Tokyo now almost thirteen years ago.




Recently I've been playing around with an MSX emulator on my Mac, partly for fun, partly for nostalgia. During this time I've realized two things:

  • 8-bit computers were fun to program and work with
  • I've forgotten how to do so many things after all these years

I thought that having spent so many years using MSX computers, if it's such a pain in the ass for me to set up a working environment under an emulator, it must be a much, much worse experience for someone who didn't have the chance to use MSX computers back when they were popular. Without manuals or a friend explaining what to do, all you'll see will be a blue screen with some white text in it, and you'll get bored and go back to burn your remaining brain cells watching YouTube videos.

I'm going to try and help with that. I'm starting this series of posts so other people can start having fun with MSX computers (emulated or real) even without previous experience with them. This is also going to be a way for me to relearn as much as I can, and learn about new applications that I didn't have the chance to try back in the day. And let's be honest: I'm doing this also for fun.

During these posts I'll write mostly about the subjects I'm interested, mainly development on the MSX using ASCII's MSX-C package and from time to time directly in Z80 assembler. If you have no idea of what I'm talking about then don't worry: I'll explain what you need to know. I may explain a couple things about the MSX-BASIC programming language too, but I won't go deep into it because I'm not very interested in it, even though I did most of my coding in it during my teenage years. MSX-BASIC is much more powerful than BASIC for other computers out there, but I think that it's still not suitable for serious programs, even though it works fine as a simple programming language for learning.

Welcome back to the 80s.

Edit: since I wrote this post I've retaken coding for MSX. My main machine is now a Panasonic FS-A1GT (and it has the main spot on my desk), but I still keep the Sony.

Comments

8-bit computers were fun to program and work with


Sure, I totally agree with this. Due to its limitations, you are forced to optimize code and find best way of doing things. At same time, these limitations are great for homebre developers (partial-time developers) since you can create games / programs with limited size / complexity.


However, I'm going to be a bit critic with MSX development scene: there is a big a lack of "development comunity". I can't understand why there is no any development framework similar to "La churrera" from Spectrum or "CPCTelera" from Amstrad CPC. They are really a big help for new developers.


Actually I feel that MSX development is not friendly for new developers, since there is lack of information (for example MSX-C documentation is in Japanese) and the lack of frameworks.

8-bit computers were fun to program and work with


Sure, I totally agree with this. Due to its limitations, you are forced to optimize code and find best way of doing things. At same time, these limitations are great for homebre developers (partial-time developers) since you can create games / programs with limited size / complexity.


However, I'm going to be a bit critic with MSX development scene: there is a big a lack of "development comunity". I can't understand why there is no any development framework similar to "La churrera" from Spectrum or "CPCTelera" from Amstrad CPC. They are really a big help for new developers.


Actually I feel that MSX development is not friendly for new developers, since there is lack of information (for example MSX-C documentation is in Japanese) and the lack of frameworks.

8-bit computers were fun to program and work with


Sure, I totally agree with this. Due to its limitations, you are forced to optimize code and find best way of doing things. At same time, these limitations are great for homebre developers (partial-time developers) since you can create games / programs with limited size / complexity.


However, I'm going to be a bit critic with MSX development scene: there is a big a lack of "development comunity". I can't understand why there is no any development framework similar to "La churrera" from Spectrum or "CPCTelera" from Amstrad CPC. They are really a big help for new developers.


Actually I feel that MSX development is not friendly for new developers, since there is lack of information (for example MSX-C documentation is in Japanese) and the lack of frameworks.

You're right. The development community in the MSX scene is currently in a very bad shape. 8-bit machines are simple, so I don't really think we need a framework, but we do need better documentation and more recognition for those who code well.


There are many books about the MSX programming for assembly, basic etc.

for ASCII MSX C there isn't much, but just enough simple documentation to figure it out if you know your way with it and if you like dead c languages ;)

I did develop in MSX C, but now i am focussing on Z80 Assembly.

Online i found a few books about it and am learning it bit by bit.


this site is also meant to center the knowledge for msx development, is it not?


Actually, there are lots and lots of books on MSX-C... but in Japanese. :-)

Yes, I'm going to start by moving here all the Relearning MSX articles I wrote for my blog, then pick up where I left.

Hopefully we'll be able to help developers write a few more games/applications.

Yes, those japanese I saw, and there are some online translations of some of them, very useful and definitely worth checking out.

MSX-C is also interesting to check, it is very complete, was busy with a SHMUP engine in MSX-C, had to halt the project and now I was going to continue but descided to first learn some assembly, might be useful as well ;-)

Learning assembly is never a bad idea.

Game engine is not a bad idea, you can reuse lot of work and libraries. In Bit Knights we are working in a game engine preciselly with that idea. It's 90% MSX-C and 10% Assembly, MSX-C is really brilliant to reuse compiled libraries and drivers.



Post a comment

You need to sign in in order to comment.