The comic book reader format for your Commodore 64
StripStream is a "simple" software only, retro computer project, for the Commodore 64. StripStream runs on a stock C64 PAL system in combination with a datasette. The fun part of the StripStream project is that it actually works remarkably well and that it uses 40 year old technology for its playback. I've made a video about it, I hope you like it.
Anyway, it didn't exist back then, but it does exist now and with the use of the StripStream editor program (that runs smoothly on your Windows PC) you can compose your own StripStream tapes. With this program you can easily string together hundreds of images (B/W only with a max. resolution of 304x96 pixels). You can add a subtitle to each image with support for up to two different languages.
For those who do not have a Commodore 64, the StripStream file, is a .TAP file, it can be opened with the emulator VICE and all you need to do is open VICE, drag-and-drop the StripStream .TAP file into it and enjoy the show. Everything you need is in the file itself.
Ehmmm... some might wonder why the StripStream editing program is a PC program, why isn't it a program that also runs on the C64, just like the player. The answer is simple, it you want to create a comic book, consisting of hundreds of images, how are you going to process these on a C64 a computer with only 64K of memory. Sure it would not be impossible, but it would be absolute torture to use and horribly slow. And getting images into the C64 might even require special hardware. Now, what I wanted to create is an easy to use tool that does not require special hardware. A simple tool for everyone so that they can make their own comic book releases for the C64. I know it's 40 years too late, but 40 years ago I was busy with other things, sorry.
This is a program for retro Commodore 64 computer enthusiasts or perhaps artists who like to publish their creations in an unconventional way. Feel free to use this program (it's completely free) to publish your artwork. Now if you want to distribute existing comic books in the StripStream format always check if this is legal (contact the publisher of the book regarding the publishing rights).
It was a normal Tuesday evening when I wondered if it would be possible to scroll image data directly from tape across the screen of a Commodore 64. Just like a really long filmstrip, scrolling from right to left across the screen. First I experimented with the split screen and data loading and after a few weeks, of after dinner programming, I was able to load my first images. Although this all sounds pretty easy, I can assure you, there are lots of challenges to get it right, to get it working reliable and without hiccups, scrolling artifacts or missing data. In other words, there are lot's of things that can go wrong. Keep in mind that I not only needed to create the player program, I needed to create the editor program too. This in order to create the data to be played back. Now, anyone with a C64 might know those fancy tape loaders (see the example image of the Robocop game loading screen) these play music and show a nice color image while also loading a game. Although that's a nice achievement, StripStream is very different.
One major difference is that the loader of the Robocop image loads it straight into the screen memory, so you'll really see the image being loaded into screen memory changing in steps of 8-bits at a time. Keep in mind that before the pixel data is already loaded, this also takes its time but you just don't notice it. The StripStream image is loaded out of sight and scrolled onto the screen one complete vertical line at a time. The image scrolls in gently from the right and exits left, between each image is a small black separator line, just like you'd see on a filmstrip or comic book. Underneath the image is a two line subtitle. This means that the screen is both a text and hires screen. The scrolling, gathering and handling of the incoming data all require a very intricate timing. And in the mean time the keyboard is being (although partially) scanned too, allowing the user to switch between the two languages of available subtitles and to be able to switch to the meta-data info screen. Now the fun part, is that the data on the tape is stored in tiny packages. Each vertical line of the image is a package and because all data on the tape is packaged in tiny packages, it doesn't take long before a new package is read from the tape. This means that the tape can be stopped at any time, forwarded, rewinded and started at any desired tape position. When started the data is almost instantly properly loaded from that point of the tape and without any noticeable delay the current data is shown on screen. The project name is pretty obvious once you realize that the tape holds a stream of packaged data and because all images (a comic strip for example) are shown in a long (potentially endless) strip that scrolls across the screen. Therefore the name StripStream does not only sound catchy, it actually makes sense, well... to me that at least.
What makes StripStream interesting, is that all the data is stored onto a regular audio tape. An example I made, uses less than 30 minutes of tape and is able to hold the player itself and more than 300 pictures and 1200 lines of subtitle text. The reason for using tape instead of disk is simple, a standard C64 disk can hold approx. 165 kBytes of data per side. In order to hold the same amount of data as the 30 min long tape about 4 disk sides would be required (meaning 2 whole disks if a disk-doubler was to be used). Sure, I could have used the 1581 with its much larger 3.5" disks, but seriously, who did you know in the 1980's who had or could afford such a costly and uncommon drive? And even in these modern times they are still pretty rare and expensive, while tapes are absolutely not. So, back to the standard C64 (1541) 5.25" disks, it would mean that the user must swap/flip the disk 4 times. But with tape, simply insert the tape, press play and enjoy. And on a 60 min tape, there's still 30 min. of space left for other stuff or even for a bigger story if needed. Not only is tape very practical, in the 80's it would have been way much cheaper too. But, perhaps the most important part is that it also is the most logical format. Because a tape is played from beginning to end, everything is sequential, unlike disks where you can have random access. But, you don't need random access when reading a book, do you? And the sequential storage of data on a tape is just like the sequential story line of any book, you read a book from beginning to end too. The fact that tape is slower than disk isn't such a big deal, the special fastloader loads a new image in about 6 seconds but because the image is revealed by scrolling in from right to left these six seconds feel much shorter and are perhaps to be considered slightly entertaining rather than an annoying delay. But since the subtitles are loaded before the image, the user can read the subtitles while the image is loaded, not only does this help in reducing the experienced loading delay, it also helps in recognizing the picture, since the resolution and size of the image isn't very high-end, compared to modern standards.
Link to item | Description |
---|---|
StripStream - Usermanual v1.0.pdf | User manual for StripStream |
StripStream_editor.zip | the StripStream editor, to make your own releases |
StripStream_editor_sourcecode.zip | the source code of the StripStream editor, for VB.net programming fun or inspiration |
C64_stripStream_player.prg | use this StripStream player in your own project |
StripStream_example_project.zip | a simple example project for the editor |
StripStream_explained.tap | a .TAP release of a simple example project |
Link to item | Description |
---|---|
StripStream-Captain_Rob.tap | StripStream release of the "Kapitein Rob" book |