How can I load my DSK game as a WAV file on my MSX 1 computer?

By bestiarum

Rookie (17)

bestiarum's picture

26-09-2018, 02:21

Hi,

I develop my first game(https://www.msx.org/news/development/en/aglos-a-new-game-dev...) for MSX using BASIC and Blue MSX to test it, and now I would like to try it on my MSX computer. I have the MSX(HotBit HB-8000), and It can only load CAS files.

Is it possible to convert the DSK in to a WAV file?

thank you very much!

Login or register to post comments

By DamnedAngel

Champion (262)

DamnedAngel's picture

26-09-2018, 04:53

Hi Bestiarium,

Please try:
1. In BlueMSX, select File|Cassete|Insert, and then enter a name for the CAS file.
2. In Basic, load your game from dsk file and enter the command CSAVE"AGLOS". The game should now be saved in your windows' CAS file.
3. Exit BlueMSX.
4. Download MSX Taper from http://www.msxblog.es/msx-taper-1-0/
5. Open CAS file in MSX Taper.
6. Connect the audio out of your PC to HotBit's Linein. You will need hotbit's cassete cable.
7. Enter the command CLOAD "AGLOS" in Hotbit's Basic.
8. Press Play button on MSX Taper.

*Avoid generating MP3 files with MSX cassete's audio. It sometimes fails due to mp3 compression. If you want an audio file to play with your phone, table, ipod, etc, prefer WAV format.

Let me know if it works.

[]s

By NYYRIKKI

Enlighted (6033)

NYYRIKKI's picture

27-09-2018, 13:04

bestiarum wrote:

Is it possible to convert the DSK in to a WAV file?

No, not directly... DSK-files require random access to the data while MSX does not have a way to select correct part of WAV-file. You also don't have enough memory to load it first in order to select correct parts from it. Even if you could, you most likely would run in to trouble while trying to store your WAV in to compact cassette as those could typically hold only 30 or 45 minutes of audio / side. Next problem would be that your MSX would not know what to do with the data as it would still lack the routines to handle the data.

How ever BASIC and binary files are easy to store in to cassette images and those are easy to turn in to WAV. DamnedAngel gave already such nice instructions that I don't need to.

If your goal is just to load your BASIC file, there might be even more user friendly ways to do it... There is ie. MSX2CAS for Android that lets you just plug your phone to MSX instead of cassette recorder, select the BASIC-file and load it directly without even thinking of DSK, CAS or WAV formats.

By enribar

Paragon (1206)

enribar's picture

27-09-2018, 17:09

... a weird but working solution is: convert the DSK in ROM and then ROM to WAV.
I remember there is an utility that convert BAS to ROM directly, a google search worth a try...

By NYYRIKKI

Enlighted (6033)

NYYRIKKI's picture

27-09-2018, 19:39

enribar wrote:

... a weird but working solution is: convert the DSK in ROM and then ROM to WAV.

No, it is not... Hotbit has only 64KB of RAM and this requires a lot more.

Quote:

I remember there is an utility that convert BAS to ROM directly, a google search worth a try...

Can't really suggest doing that either... Converting to ROM is not quite that easy task as it requires that the BASIC pointers are used instead of linenumbers (Otherways your GOTO/GOSUB-commands may fail) You need to adjust the program a bit up in memory to add header and the free RAM when BASIC is in ROM image is very limited. I have a better solution to store BASIC in ROM than the official way is, but this all is totally irrelevant as all that was needed was to convert the BASIC program to WAV... If some container format is needed in between then just use CAS as DamnedAngel suggested.

By Manuel

Ascended (19310)

Manuel's picture

27-09-2018, 21:43

You could save the program to WAV in openMSX... but that was not mentioned by the original poster.

By bestiarum

Rookie (17)

bestiarum's picture

30-09-2018, 06:48

Thank you all DamnedAngel, NYYRIKKI, enribar and Manuel !

I will be doing some tests/experiments based in the excellent info that I receive here. Thank you very much!

I will probably make my game code simpler to allow this transition to go easier.