USAGE:

Load tha sna, compress, apply and save.

*Detailed usage:

1. Click "OPEN SNA" and select an 48KB SNA file. (128k not supported)
2. Press "Compress Now" and wait.. It's sloowww..
3. After compression is [b]100%[/b] done, press APPLY. 
4. You'll be taken to save window.
5. select target: if you want to copy the game to microdrive select it,or else tape loader will be injected.
6. Click save. (do not change any other parameters)

Program generates a standard TAP file with appropriate loader, you can play it from any emulator (eg. specemu has tape volume boost options if you need to transfer it to a real speccy). 


Possibly your game will be compressed about %50.

[Backup plan]
if your game cannot compress well, you can use compressionless mode. This mode corrupts only 156 bytes, or even less than 30 bytes. This mode should only used for when a screen$ structure is important or compression is not generated enough space to run basic. You can find this tool under "Edit memory map" tab.

DOWNLOAD: http://arda.kisafilm.org/fish/VSC_r1.zip (250kb)

Zip file contains 2 files, they must reside under same directory. Packer is a special packer to VSC, it doesnt pack anything other than VSC output, so dont mess with it. Unmodified packer available at gasman's BitBuster page.

Just click Visual Snapshot Converter and run.

TO COPY FILES TO MICRODRIVE:

When saving your file from VSC, make sure you selected Microdrive and UNchecked Autoload option.

Now. Setup your speccy, add only one microdrive, a pre-formatted cartridge with enough space on it, connect it's audio input to your computer.

1. On speccy type LOAD "" speccy waits for audio.
2a. Play TAP file from your emulator (do not use edge loader or flash loader.
2b. "Basic" part loads.Pause the emulator.
3. You can see the microdrive loader listing on real speccy. it's only 1 line long.
4. On real spectrum type SAVE *"m";1;"GAMENAME" LINE 1 
5. now type CLEAR X  : The X number is what you see in the listing.
6. after clear, time to transfer code block. Type LOAD "" CODE
7. Unpause the emulator. The Code block loads into real speccy.
8. After loading, you must do a simple calculation: Y=65535-X  (X is the clear adress)
9. Now by using the result, type SAVE *"m";1;"v2" CODE X+1,Y

example calculation. eg. if CLEAR is 30000 , 65535-30000=35535. thus, LOAD "" CODE 30001,35535

That's all. I'll be including a microdrive/disk copier soon. Check my website.




History:

Actually it started as ASM's idea to move game data which overlaps basic to somewhere safe, load the game data from basic, and execute game from basic by copying overlapping gamedata into it's original place.

And when I managed accomplish this simple task, asm released zxboot, which has simplistic but effective compressor, so it made my program absolete even before I released it.

After looking Asm's compression, I started to think that very same idea can still made possible but with only 'one' codeblock. But this needed an extremely effective compresser, which I'm now familiar of few, I used Bitbuster from Team Bomba.

Bitbuster compresses WHOLE batman snapshot into 33Kb (saves over 17kb), Cobra to 23kb and chuckie egg to mere 11kb (note that: including screen$).

That way it takes less time to load a game, you can fit more games into one microdrive cartridge or +3 disk.

Sadly, this tool corrupts first 280 to 437 bytes of your screen. The compressor needs to reside somewhere. Note that this size is not very optimized. it's very easy to save 100 more bytes, posibbly I will be aiming that if someone beats me to it. 

Another downside is this program coded under microsoft vc2008 .net, so you'll need .net 2.0+.

Also this program uses a slightly modified bitbuster extreme by team bomba and gasman. Here is the licence:

Bitbuster Copyright (c) 2002-2003 Team Bomba

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
