|
ForumsSega Master System / Mark III / Game GearSG-1000 / SC-3000 / SF-7000 / OMV |
Home - Forums - Games - Scans - Maps - Cheats - Credits Music - Videos - Development - Hacks - Translations - Homebrew |
Author | Message |
---|---|
|
Online tape conversion
Posted: Thu Aug 19, 2021 9:09 am
|
I made a lossless compression from wav to tzx available online at http://tapeconv.tk:5000/
If you get warnings from chrome that the file "is not commonly downloaded" just give it "Keep". Yep, .tzx are not commonly downloaded :D The file is tar.xz compressed. Use winrar or any other decompressor you like. Details: In the past, alternative formats (e.g. ".bit") were proposed for the storage of tapes. However, these formats are unsuited to store games with protections (which do not follow the sega basic's standard, aka the Kansas City standard). The TZX format, initially developed for the ZXspectrum, is a very flexible format. Here is the format description http://k1.spdns.de/Develop/Projects/zasm/Info/TZX%20format.html This format is supported by many tools (e.g. mame's castool) and hardware players (e.g. https://hackaday.com/tag/tzxduino/) To go into the gritty details, I represent the audio using Direct Recording blocks. For basic programs, a proposed extension of TZX, the Kansas City Block (ID 4B) could be used for further compression https://github-wiki-see.page/m/nataliapc/makeTSX/wiki/Tutorial-How-to-generate-T... However, the support is still not widespread (e.g. I believe mame's castool does not support it yet) so for the moment I believe it's better to stick to the direct recording blocks. And, a simple tar.xz compression yields files under 100Kb anyway. And let's clarify why I say "lossless". Clearly wav files have intensity levels, so there's more information in them then in a tzx. However, the SC-3000 (or the SK-1100 keyboard) convert the analog signals to a binary signal (fed to the 8255), so for what it concerns the SC-3000, a signal is either high or low, and it doesn't make any difference if it's +0.7V or +0.9 V |
|
|
Posted: Fri Aug 20, 2021 11:02 am |
Very interesting work, thank you for sharing! I've been working on a tape loader for the Master System recently but as the intention is to load BBC BASIC programs I've been using Acorn's cassette format and so gravitated towards UEF as the format of choice for tape images. Is TZX more accepted for SC-3000 or is this something you're more working towards personally? | |
|
Posted: Fri Aug 20, 2021 1:40 pm |
There are still not many sc-3000 tapes available, so there's no "more accepted format" yet.
I initially had a look at .bit files, as they seem the most common (and I generated this https://archive.org/details/saverioTapes2 from a set of audio files kindly provided by the sc-3000 survivors guys) but their limitations in representable signals made me sway away from the .bit format. What pushed me toward tzx is Maxim's comment in this thread https://www.smspower.org/forums/15470-SC3000TapeSoftwareRestorationProject the fact that mame's castool supports it, and the proliferation of tzx players. UEF is surely a valid alternative (and it seems to be supported by recent hardware http://arduitape.blog spot.com/2018/05/uef-playback-added-to-tzxduino.html ) but I find tzx has no particular reasons to be avoided either. In particular, the Direct Recording blocks are a totally straightforward description of the signal (1 bit for each sample). Adding support to any emulator is trivial. As for the compression capabilities, I tried converting PALIKAT (great game guys!!), a 3.3Mb wav with a non standard loader. A tar.xz archive of the txz becomes a 54Kb file. Perfectly ok for nowadays storage and bandwidth (a photo is few Mbs!). Furthermore a simple castool convert tzx game.tzx game.wav is enough to generate a wav back. |
|
|
Posted: Fri Aug 20, 2021 7:03 pm |
Thank you for the information! I'll make sure to add TZX support to my cassette emulator too, as long as I can turn the loaded image into a 4800Hz bitstream it'll be a trivial change. For convenience I also list the files on a tape so you can "fast forward" to one by clicking on its name, do you know of somewhere the SC-3000's tape format is documented? | |
|
Posted: Sat Aug 21, 2021 2:51 am |
Here are sega basic's format specifications:
https://www.smspower.org/uploads/Development/sc3000-tape_format_notes.zip However the hardware poses no constraints on the encoding, so some software uses basic to load a custom loader, and then proceeds with its custom encoding. (I just had a look at your homepage, your ongoing project is so cool!!) |
|