[ R.I.P. ]
MSX Utilities
 by Oleg Alferov aka Secoh 
     

Uplink...

in Russian...


Windows
Utilities



MSX
Emulator...


About...

Links...

Friends...

Mailing List...
 
BASIC Editors    BASIC Visual effects    BASIC Games    Programming studies    File converters

MSX Emulator

How to install, configure and run the emulator
How to run BASIC programs
How to run MSX-DOS executables
How to compile programs in Pascal
Legal notice

How to install, configure and run the emulator
DOWNLOAD
click on files to start
EMSX-CJS.ZIP
(102.7K)
ROMS.ZIP
(49.6K)
MSXDOS.ZIP
(50.8K)

The software displayed on this website was tested with the MSX emulator version 0.99b1 written by Albert Siersema, Ronald Gorter and Peter Kelders, Groningen, The Netherlands. The emulator is copyrighted, see Legal notice below.

Create a folder for the emulator files, and unpack there the emulator (file 'emsx-cjs.zip') and ROM archives (file 'roms.zip').

To run the emulator, go into the emulator folder and execute file MSX1.EXE. It works fine under DOS, Windows 95 and 98, when executed by Windows Explorer, MS-DOS prompt or Volkov Commander. I had problems executing it from FAR Commander or batch command file.

The emulator is already configured to access the first floppy (that is usually A: under MS-DOS or Windows) to the letter A:, and the first hard drive (usually C:) to the letter B:. Refer to file DRIVES.TBL if you need alterations.

In the running emulator, Ctrl+Break combination calls the control panel. To exit emulator, press Q; to restart it, press R.

For further options, read the documentation (file 'msx1emul.doc').

How to run BASIC programs

  • Take an empty 1.44M floppy and write onto it all the BASIC programs you want to try. Do not use long names (only 8 characters for name and 3 for extension). Do not use subfolders.
  • Remove floppy from drive.
  • Run the emulator.
  • Insert floppy into drive.
  • Load the selected program by command:

    load"program_name"

    entered into the current position of the screen and followed by Enter key. The program_name is the name of the program to load, as it appears in the MS-DOS directory list. MSX BDOS doesn't support long names or subdirectories.
  • Run the program by typing run command in the current position of the screen followed by Enter key.

Working with BASIC, you can modify and save your programs. To save the program in the human-readable form, that also QBasic is able to load, use the command:

save"program_name",a

instead of the command without a suffix.

Some BASIC programs presented in this archive can be executed from QBasic. The QBasic interpreter is part of MS-DOS package and can also be found on Windows 9X installation CD. To load a program to QBasic, enter into MS-DOS session and type

path\to\qbasic /run program_name

If the program has no extension, add trailing dot to the name. To interrupt a dead cycle in the program (if any), press Ctrl+Break.

Although I do not provide the QBasic download, it is very likely that you already have it. Try the Links section for more information. And remember: the MSX-specific files provided by this site are enough to demonstrate all my software!

How to run MSX-DOS executables

Working with MSX-DOS is more tricky than with plain BASIC. MSX-DOS itself is a set of programs that are loaded from the floppy disk. The standard 1.44M floppy seems to be unsupported by generic MSX, so we need a hack to use it.

If you have an old 720K floppy, you can write the MSX-DOS bootable disk image onto it and use this disk without special tricks. The MSX-DOS bootable disk image can be found on various public MSX archives.

The authors of the emulator suggest the following method of creating 720K disk out of 1.44M one:
Formatting/Using 1.44Mb disks at 720Kb: you need to cover the second hole in the disk (opposite to the write protect tab). Use e.g. 5.25" write protect stickers.
It is essential to format this 'covered' disk by the explicit command

format a:/u/F:720

otherwise MS-DOS will try to identify the floppy itself that leads to format failure.

Then you can put a 720K disk image onto the floppy, or create 720K-specific boot sector by MSXBOOT.COM program, called from MS-DOS, or by _FORMAT command called from MSX BASIC interpreter. This is a floppy with correct data structures so you probably can read from and write to it without limitations.

So, the entire procedure looks like the following:

  • Unpack MSX-DOS package (file 'msxdos.zip').
  • Take a 1.44M floppy disk and glue the hole, other than for write protection.
  • Format the floppy by command

    format a:/u/F:720

  • Run program MSXBOOT.COM, select disk (A: or B:), then press the key 2.
  • Copy file MSXDOS.SYS from the MSX-DOS package to the floppy.
  • Copy file COMMAND.COM from the MSX-DOS package to the floppy. Note that it is not the same command.com that MS-DOS uses.
  • Copy your MSX-DOS program to the floppy.
  • Run the emulator.
  • Enter the name of your MSX-DOS program when A> prompt appears. Please report the problem if you doesn't receive this prompt.

To get to the BASIC interpreter from MSX-DOS, type command basic at the MSX-DOS prompt. To get back from BASIC to MSX-DOS, type _system.

I didn't play with this method too much, so please share your experience with me, if you tried it too.

The rest of the text will explain you how to modify the standard 1.44M floppy for use with the emulator and run MSX-DOS and other programs under MSX-DOS. The trick behind this technique is to substitute the boot sector of the floppy by MSX-DOS boot code (which was taken from a real MSX 720K floppy), while MS-DOS box refers to the disk as to the 1.44M one.

This procedure is for demonstration purposes only. It intended to run all programs necessary to demonstrate my MSX archive, but is NOT INTENDED to save files created during the MSX-DOS session. Please consider usage of other software if you do development for MSX-DOS platform.

To run a specific program under MSX-DOS, do the following:

  • Unpack MSX-DOS package.
  • Take a blank 1.44M floppy disk, or format such a disk.
  • Copy file MSXDOS.SYS from the MSX-DOS package to the floppy.
  • Copy file COMMAND.COM from the MSX-DOS package to the floppy. Note that it is not the same command.com that MS-DOS uses.
  • Copy your MSX-DOS program to the floppy.
  • During the following three steps, do not remove floppy from drive.
  • Run program BOOT144.EXE.
  • Run the emulator.
  • Enter the name of your MSX-DOS program when A> prompt appears.
  • Upon exit from the emulator, erase the floppy by reformatting.

How to compile programs in Pascal

Many programs on this site are supplied with their source code. Unlike more recent programs, my MSX projects were written on Pascal, so you may need a compiler to try them.

The Turbo Pascal compiler (Borland) can be found in the MSX-DOS package (file 'msxdos.zip') in the subdirectory "pascal". Copy all files from this subdirectory to the MSX-DOS floppy disk.

To compile the source (PAS file) into executable (COM file), do the following:

  • Run turbo.com;
  • For loading error messages, press Y, otherwise press N. Error messages take some memory that could make you unable to compile large programs;
  • Press O key (and enter "options" menu);
  • Press C key (to select standalone COM target);
  • You may also want to change the upper limit by pressing E key and entering the maximum value for the End Address, in hexadecimal format (usually D606);
  • Press Q to return to the main menu;
  • Press C (compile) and enter file name to compile.

To exit Turbo Pascal, press Q from the main menu. Sometimes you will need to answer "yes" for error messages to get your program compiled. When error occurs, the compiler enters its built-in editor. Since it expects 80-column display, the best way is to reset the emulator.

Legal notice

According to the emulator license, the emulator software itself is a shareware which can be redistributed by third party, provided the emulator package is supplied unchanged and free of charge, and the end-user is allowed to evaluate (read: use) it for 7 days.

There is a chance that the contents of MSX ROM is a copyrighted software, therefore it cannot be used for purposes other than for illustration. Nevertheless, there are many public archives that provide the ROM files suitable for use with the emulator.

All the trademarks in the text above are the property of their respective owners.
 


© 2002,
Oleg Alferov
aka Secoh
secoh@anl.gov