post

MSX cassette page

On this page I have documented my 20 year experience with cassette tapes on MSX!

You find my experiments and programs I use for:
– tricks to read troubled tapes
– use another MSX as cassette recorder
– use a PC or cd player as cassette recorder/player (handy if you have a MSX without disk drive)

My current interest for the MSX cassette system is to be able to use MSX 1 computers for i/o control without the need for disk systems.
As you can see this is perfectly possible nowadays with the aid of a PC (i use my notebook as MSX cassette system!).
If you want to run programs on a MSX computer without diskdrives you will find here the tricks and tools to do that.

The MSX cassette system
On a MSX without disk drive the only way to work with files is using the cassette system of MSX. And since MSX 1 computers and some MSX 2 types do not have a disk system most of us started working with MSX listening and cursing that slow and noisy cassette tape system.

In fact the cassette system for storing files on MSX is not that bad. The cassette routines are quite smart in detecting speed differences, the standard MSX routines automatically can work with differences in tape speed and are quite forgiving in outputlevel and differences in the position of the cassette read head alignment. Also speed is slow (1200 baud) or not that slow (2400 baud). Note that MSX is very week in detecting load errors.

All you want to know about the technical details and programming bios calls of MSX can be found in the MSX Red book .
Hardware circuit diagrams can be found in the service manuals on the hardware page .

As an example of how to use the tape related MSX BIOS calls programs see these sources of routines to read and write the screen contents from and to tape by M.C. de Jong.

When I got my first MSX computer (a Toshiba HX-10) i tried to use my simple cassette recorder but it failed all the time. So i bought a WH Smith tape system that is optimised for computer systems: variable output level, can be controlled by the MSX (the MOTOR command, hear the clicks!) and has the option of no/quiet/normal speaker output. A very nice device and i could read all the tapes and record at 2400 baud.

Tricks
Getting the MSX reading tapes does require some tricks often:

Head alignment: Use a small screwdriver to turn a bit the screw next to the cassette recording head to align the tape. A good MSX cassette tape recorder as the WH SMith type has a hole for this purpose. Listen to the tone and optimise for the pitch as sharp as possible.
Cleaning: keep the head of the tape recorder clean with alcohol and a clean wipe.
TV/monitor interference: disconnect the TV or monitor from the MSX and listen to the sound if hum and hiss are becoming less. I used thos trick for some very difficult to read tapes.
High volume: the reading results may become better if the cassette recorder is set to as loud as possible.
Retry: note that MSX cassette files are not checked for errors! So it is possible to see the program being loaded and then crashing in all sorts of ways. Retry then with any of the tricks above. At least check what is on the tape with the TAPDIR program : it shows all blocks (basic programs, binary programs, ascii text files or ‘unknown’ blocks.

Copying MSX cassette tapes
To copy a MSX cassette tape there is more than one way:
– Copy the output of the cassette recorder on another cassette recorder. A method with low chance of success but it might work.
– Use a program like COPMSX to copy all blocks one by one to another tape. This program not only allows to copy the cassette tape contents but can also convert from 1200 to 2400 baud or the other way around. Here you find the program with assembler (TASM) source , written in 1985 for MSX and adapted in 2001 to English and MSX-2.
– Record the output of the cassette recorder on a PC with a soundcard. With any wave editing program (i like Audicity, but any program on any platform will do) you can clean up the wave file, filter out hum (50 Hz for example) and improve the volume (normalize). Be careful with filtering! And make sure that the recording level is optimal: no clipping!!!, not too soft either. 44KHz mono 8 bit is fine, 22KHz also works fine but 44 KHZ allows more editing experiments.
The resulting wave file can be stored on a cassette tape again or stored on an audio cd or just played back from the PC. Ofcourse only a cassette recorder can be stopped and started with the Remote control by the MSX, otherwise you have to stop and start playback manually.
If you store the wave file on an audio or have enough disk space: use 44KHz 16 bit stereo.
Using mp3 format or other compressed formats will work if you set the quality settings high enough, for example 320Kb for mp3 works from p3 players.
New tricks
Cassette recorders are quite low quality (lofi, not hifi) audio recording devices. 2400 baud is the maximum speed you can achieve with these devices. And cassette tapes can break, wear, loose high tones in the end.

Now there are several ways to use the cassette interface without that old- fashioned cassette recorder:
– use another MSX (with disk drive) as source
– use a PC with soundcard as the ultimate cassette recorder
Of course you need to have either one of these devices! But if you are reading this article, it is quite certain you use a computer with decent sound facilities.

MSX as cassette recorder
When I bought my second MSX computer ( a Spectravideo X’Press SVI.738 with a 360KB diskdrive) i wanted to continue using my first MSX computer (remember, the Toshiba HX-10) and checked if the output of the Spectravideo could be send to the Toshiba (CSAVE on the SVI.738 and CLOAD on the HX-10). It does not work by just connecting output to input (you have to make your own cables anyway) , the signal needs to be amplified (10x was enough). See the next diagram for a simple opamp based amplifier and the connector.

Simple to construct on experimenters board. I took the easy way by using the + 12V and – 12 V from the MSX cartrdige connector as shown in the next figures.

PC as cassette recorder
Record the output of the cassette recorder on a PC with a soundcard. With any wave editing program (i like Cooledit on Windows, but any program on any platform will do) you can clean up the wave file, filter out hum (50 Hz for example) and improve the volume (normalize). Be carefull with filtering! And make sure that the recording level is optimal: no clipping!!!, not too soft either. 44KHz mono 8 bit is fine, 22KHz also works fine but 44 KHZ allows more editing experiments.
The resulting wave file can be stored on a cassette tape again or stored on an audio cd or just played back from the PC. Ofcourse only a cassette recorder can be stopped and started with the Remote control by the MSX, otherwise you have to stop and start playback manually between the blocks.
The PC is such a good recorder that you can do some editing which makes laoding much faster: triple the speed to 3600 baud! Ofcourse this only works when the sample frequency is high enough: 44KHz is required.

Audio CD player as cassette recorder/player
Of course this is only a playback facility! Record the cassette output as described above (or use one of the tools below) and convert the separate blocks to Wave (PCM 44 KHz 16 bit stereo files). Burn these wave files as separate tracks to an audio cd and play the tracks as needed by the MSX loading program.
Using mp3 format or other compressed formats will work if you set the quality settings high enough, for example 320Kb for mp3 works from mp3 players.
You can combine the typical MSX header (the block with the long header and the small data block) and the data block as one track, make sure there is some silence between header and datablock.

MSX info

In 1984 I bought my first MSX, a Toshiba HX-10. A toy machine. Fun, but only suited for games. Z80, MSX-Basic, 64K, video (40×24 characters, graphics, color), audio cassette recorder for storage.

In 1986 the second machine, a Spectravideo SVI.738 Xpress entered my home. And that was not only fun, but a real computer: floppy drive, MSX-DOS, CP/M, 80 column screen. A real workhorse, with CP/M and Turbo Pascal! Mostly used with CP/M and a VT100 as console via the serial interface. Enhanced to MSX-2, two floppy drives, RGB output.

My interest in videoprocessing made me buy the quite expensive NMS8280 in 1992. Enhanced to MSX-2+ with memory mappers, slot expanders, SCSI hard disk interfaces, S-VHS video input/output. An impressive machine, but less a workhorse than I expected it to be. Video processing was very time consuming, I had two Panasonic S-VHS professional recorders, a video mixing tablet and the NM8280. It was not the success I hoped for, that had to wait for Adobe Premiere and full digital video editing with capturing analog video. A stream of IBM PC clones took the place of workhorse the years after and the MSX machines gathered dust.

Here I show scans and software for MSX I have personally scanned and dumped from floppy. A small subset and in no way intended to be the MSX Info Pages, just my scans and dumps.

 

History of MSX Info Pages

Around 2000 I started collecting retro home computers, MSX and many other 8 bit CPU based small computers. And developed the MSX Info website full with documents and software, initialy on the machines I owned like SVI.738 and NMS8280 and the interfacing with electronics. The house quickly filled with hundreds of machines, the website exploded with scanned documents and files.
All things come to an end, in 2012 I started selling the huge collection to enable a move to a smaller place and recover some of my investments. So in 2015 all was gone, the photos and files are all that is left.
I continued to update the website MSX Info Pages with what was sent to me or collected from the internet. In 2019 I decided to stop also with the website, thanks to the continued leeching and deep-linking by the unresponsive maintainers of msx.org. The quality content of the website, my pages, my scans, are what made the MSX Info Pages fun for me, not being used as free file storage to by the wiki maintainers of msx.org. So be it. The MSX scene is often an unpleasant environment.

 

MSX Info pages are closed as of April 2, 2019

A static copy, thanks to Arnaud de Klerk aka TFH, is available at at TFHs server.