What is the Cassiopei?To make a long story
short, the Cassiopei (which stands for CASSette IO Peripheral
Interface) is a device that connects to the cassetteport of your CBM
computer. But that doesn't mean it works the same as tap, no, it sure
doesn't. Tape is considered to be slow, tha Cassiopei is more then 50x
faster then standard tape. The big advantage of a device using
the cassetteport instead of any other port is simple, the
cassetteport is available on all 8-bit CBM computers (with some
exceptions like the SX-64 and the C64 Game System, but these are
actually crippled C64's). This means that it can connect as
easy to your C128 as to your PET. Yes, you read it
correctly, only device to serve them all. One modern storage
medium for all your 8-bit CBM computers, how cool is that?
Cassiopei v2.0, why?That is a very good question... the original Cassiopei ( Cassiopei
) was (and still is) a very usefull device. But over the years
I've learned it is't perfect. Unfortunately, the new version will
not be perfect
either, sorry. But it solves some issues that make the new
version a lot more practical then the first. What are those
issues, I hear you think, well the new version uses a full sized
those unpractically small micro or mini variations that you can hardly
hold but easily loose). The original Cassiopei uses an onboard
8MByte memory chip for storage. The new Cassiopei, can hold much more
depending on the size of the installed SD-card, if you install an
8GByte card, then storage has increased by a factor 1000. But
using such a big card does not really make a lot of sense because
you will have a hard time filling that considering that in practice it
isn't fun browsing through hundreds or thousands of games in order to
select you favorite pacman. But for those who do like to do that, the
new Cassiopei also supports the use of subdirectories, this way you can
archive your games in convenient groups for quicker acces. Anyway,
with the abillity to store so much, you could decide to store
ALL your games and programs for ALL your CBM computers
onto one single device, but be sure to make backups, just in case
you lose your Cassiopei or leave it at a friends house, etc.
of the SD-card, the Cassiopei manager software (that runs
only on PC) is no longer required. You can change your settings by
changing a configuration file stored on the SD-card, you can upload
your files by dragging them to the SD-card inserted in your computer.
Also changing settings can also been done using your CBM computer or
the menu on the device itself. And if that's not enough, you can also
change your settings and stored files through the convenience of a
webbrowser. So no it is no longer a problem if you own a PC, Linux or
Apple computer. The new version will also be featuring a pass through
connector, so now you can create/restore original tapes by playing back
TAP files and recording them on your datasette. You can also backup/capture a real tape and make your own TAP files.
though, the new version of the Cassiopei no
longer has the 10-pole expansion connector (to connect to your own
electronics projects). Research has shown that this functionality
was never used by owners of the Cassiopei and (due to the
lack of available IO on the new processor inside the Cassiopei
it was decided no longer to support this feature. People wanting to
connect something to their CBM computer must therefore refer to the CBM
computers userport, just like in the good old days.
How to use it?
Cassiopei can operate in four different modes:
operational mode is selected using the menu function of the Cassiopei.
This menu allows you to choose a file and automatically load it. These
settings are saved, so if you want to use the same game and mode over
and over again, you do not need to go into the menu, saving you
precious gaming time ;-)
(this is the cassetteport's standard slow loading speed), allows you to
load .PRG files from the SD-card.
- fast loader
(loads more then 50 times faster times then the standard
allows you to load .PRG files from the SD-card.
- virtual file mode
(loads more then 50 times faster times then the standard
loader), allows you to load .PRG files directly into the memory of your CBM, this mode
makes cross development much easier.
- TAP file mode
(loads as fast as the original tape image requires it to do), allows
you to load .TAP files from the SD-card.
file control using the display and buttons on the device
the playback of TAP files the Cassiopei can now display the progress on
a small display. Using the buttons you can also navigate through the
The files/games you want to load may be chosen using the menu
program (which will be loaded when the user
types LOAD and presses the menu button when the computer request the
user to "press play on tape").
Compatibillity with other hardware:
Just like the original Cassiopei, the Cassiopei v2.0 cannot be used in combination with the Chameleon cartridge
the Chameleon cartridge completely bypasses the C64's 6510
processor and uses the processor in the Chameleon. Because the tape
signals are directly connected to the C64's 6510 the Chameleon isn't
able to use the cassetteport IO-lines at all !!! Therefore a C64 with
Chameleon cannot load from
tape and cannot use the Cassiopei.
Compatibillity with other hardware connected to the
not be used in combination with other hardware (other then a datasette) connected to the
cassetteport. For instance, the 1541-ultimate tape adapter or a
cassetteport splitter allowing to connect more then 1 datasette to
the cassetteport. This because the Cassiopei uses the IO-lines of the
cassetteport in a more advanced way then then all
other existing hardware. When combining other cassetteport
the Cassiopei damage might occur. However it is possible to use the
Cassiopei with such devices but
only if the Cassiopei is in .TAP file mode, because during
.TAP file mode the Casiopei acts like a real Commodore datasette.
of things need to be done before the Cassiopei v2.0 is finished. Although
lot's of software can be re-used many many changes need to be made for
one simple reason... the Cassiopei v2.0 uses a completely different
processor and storage medium then the original Cassiopei. The processor
for instance has changed from a PIC microcontroller to the famous
ESP8266 Wifi module. Software for the various commodore computers needs
also to be
re-written, fastloaders need to be tested. Because of the many possible
interfaces on which the menu can be used required the settings menus
need to be completely re-designed, the 50x50mm case no longer could fit
the larger SD-card module and ESP8266 and display and therefor
also needed to be redesigned. The wireless bootloader needs
be properly tested and the list goes on and on. But the goal is simple,
a better Cassiopei that is easier to use and configure.
To give an
impression of the progress being made, the whishlist of the
Cassiopie v2.0 design is shown below:
CASSIOPEI v2.0 "TO DO-list" (oktober 2017)
All PCB's undergo important design changes, the most relevant
changes are mention here:
1st design: first rough PCB based on protoboard PCB design
2nd design: larger PCB, display added, datasette connector added
3rd design: mounting holes and frontplate added
4th (final) design: multiplexer allows for interrupt based tape digitizer
also a switch and speaker are added to monitor the tape signals
|The hardware is going through various stages, during development new ideas come up and other ideas seem to be not practical.|
Changing the hardware now is easy, changing the hardware when the design is released it would mean people could have
incompatible hardware, a situation that must be avoided. Why, well how would you feel if you bought a brand new Cassiopei-II
to find out that a month later a newer model is available that has that
feature you always wanted. The final design will have a
speaker for monitoring the tape signals. Because when you are
digitizing tape you need to know if the tape is playing properly.
also for playback a monitor would be nice. Considering the size and low
costs of such a speaker it could easily be incoparated
in the design. Audio quality is only sufficient for tape related blips and beeps, but that is exactly what we want.
So don't expect to use your Cassiopei in combination with a datasette to playback those old madonna tapes you've found.
the volume cannot be regulated (it is quite soft already), but the
switch allows you to select the source (read or write) so
this effectively allows you to disable the noise if you don't want it.
|Enclosure (case)||In progress||The
enclosure for the original Cassiopei was compact, clean, small and
sufficient... but it required a lot of work in order to make it.|
case was engraved, holes were cut, buttons alligned, PCB glued into the
case. All-in-all a lot of work, the Cassiopei v2.0 will
not be having such a case, because of the display and the extra button even more work would be required making it impractical
to make these enclosures myself. The new design therefore must be simple, but robust. The look and feel must be close to that of
the original Cassiopei, although that would be difficult as the new design has more features.
looks very promissing, but the reality is that the technology is just
too slow to be a cost effective sollution. Also when
done, the print requires clean up and smoothing to make it look decent.
Because if there is one thing that I hate it is a
bad 3D printed frontplate or artifacts caused by warping, filament tolerances, jagged edges etc.
So the bottom line is that I'm still experimenting with different types of standard cases, PCB material, 3D printing.
my DIY 3D printer suffered from some problems and in combination with
some personal design whishes it eventually
made me realize it was time to move on to a new design of my home-build 3D printer. Fortunately I could re-use most of the parts
A fun project but it slightly messes
up my shedule. Though, during the summer the high temperatures in
the attic (where I do all
and testing) make it virtually impossible to concentrate. Therefor 3D
printer project was a nice (metal and woodworking)
could be mostly executed in the much cooler garden and shed. This new
printer allows me to continue the design of the
optional 3d printed case.
design will be made in such a way that the 3D printed case is not
required (so it can be optional), sure a pretty case makes it looks
but a sandwitch construction of 3 PCB's can offer sufficient protection
for those who don't want a case. Therefor the design must
allow for adding a case later on, so that it will be possible to upgrade the caseless version to a cased version.
|CPIO protocol||Finished||Converting routines of the orginal to design to make them work on the ESP8266|
This is a slightly difficult task because the ESP8266 has less IO pins than the PIC microcontroller of the original design.
But more importantly, the ESP8266 has a wifi module that requires constant attention and continuous care must be
taken to keep IO-timing constant while also allowing the kernal to handle the wifi related actions.
|CPIO commands||In progress||In order to transfer files, the Cassiopei requires instructions through CPIO commands. These commands are not compatible|
the commands used by the original Cassiopei, simply because the new
design uses a different storage medium and can do things that the old
But also the way filenames are being transferred is
completely different. This because the CBM uses PETSCII and the
SD-card uses ASCII.
Therefore the new design is set up in such a way that filename transfer is mainly from Cassiopei to CBM (ASCII converted
PETSCII) and not both ways as it would otherwise lead to problems like
files not being found because of charcode remapping difficulties.
|User interface||Finished||The original Cassiopei did not have a display and only 2 usable buttons. This was insufficient for TAP-file playback.|
The new design features a display and 3 buttons. Now menus can be used, settings can be shown and changed.
And most important for TAP-file users, winding and rewinding becomes very easy.
|Menu program||PET 20XX: Finished|
PET 30XX: Finished
PET 40XX: Finished
PET 80XX: Finished
|The menu program allows to user to configure the cassiopei. The menu shown is the same as one the display,|
but configuring through the CBM, using a joystick or keyboard, is much more convenient. Simply because
the display is very small and not every user would prefer using it. The menu program is a good alternative.
|Web configuration||Finished||The web interface is a simple tool to connect to the Cassiopei and upload a single file (or retrieve it) to/from the SD-card.|
It also allows you to do some settings if you do not want to use the display or the menu program. So in short you can configure
it using your mobile phone through wifi.
|Bootloader||Finished||The bootloader allows to the user to upload new firmware into the Cassiopei. in other words to fix bugs and add new features.|
This bootloader requires NO special cables and works through wifi, using a normal webbrowser, this works best using a
computer in order to download and transfer the required hex file.
is still possible to program the Cassiopei with new firmware by
using a special programming cable, however this if only useful
for developers, like me. This programming header is inside the Cassiopei and not acceable to users. This programming header
is not compatible with the expansion header of the original Cassiopei.
|PETSCII video||PET 20XX: requires testing|
PET 30XX: Finished
PET 40XX: requires testing
PET 80XX: requires testing
|One fun experiment on the original Cassiopei was the playback of highly compressed PETSCII video. But this project was|
never really finished. In order to test the Cassiopei I used this project to finetune some communication routines, it allowed me
to properly test the Cassiopei design , simply by using it, if bugs were present, I WOULD encounter them. And so I did, with
this part being fixed we now have a compressed PETSCII video player. But also a PC-software tool to create compressed
the bandwith of the Cassiopei isn't sufficient (and constant) to use it
to stream audio data during video playback,
therefore the videos have no sound... just like 100 years ago when movies starred mr. Keaton and Chaplin.
|NTP clock jiffy clock||Finished||After exitting the Casiopei menu the jiffy clock is being update with the time fetched from the internet.|
If you have this option enabled, then you'd never have to set the time (TI$) again.
This is mostly usefull for your own programs, because programs written 30 years ago did not expect this feature and will most
likely still request the timewether it has been properly set or not.
|NTP clock for GEOS||Finished||The NTP clock settings could be used by GEOS, so that the timestamps on your GEOS disks would be accurate.|
GEOS auto-exec driver has been written, install it onto your GEOS disk
(make sure the Cassiopei is connected to your CBM)
and never set the
|TAP file creator||In progress||The
key is speed, saving data to disk, while sampling the tape is a
challenge. Although buffering and interrupts are used there isn't|
room for error, simply because we never know what kind of card (slow
write performance) is being used in the field. Hardware
changes are made, testing required when the new PCB arrives.
|TAP file payer||Requires testing||The only way to find out if TAP files are beingplayed back properly is by loading each and everyone a few times, this|
is not practical, so a selection is made. Currently one of those files seems to raise problems under certain conditions.
Testing testing testing, which is quite difficult, because the amount of data is huge and the cause of the error could be in
a single bit not being generated correctly for that specific situation. Also winding and rewinding requires proper testing,
this because the data is buffered and played in a very unconventional way.
Though lot's of tapes already load without problems, so I'm quite positive about getting this 100%.
|Disk wizard||Making huge progress||The disk wizard allows the user to create a real disk from a D64 file.|
The disk wizard allows the user to a D64 file from a real disk.
The disk wizard holds every piece of code, related to filedata transfer, youmight ever need in a CBM program. Therefor in
order to test these important pieces of code, the disk wizard is a perfect platform for testing these new commands and routines.
With the iomportant benefit that, when finished, is a nice tool for creating D64 files and/or disks.
However, regarding reliabillity there are some problems when using fast formatting routines and high speed data transfer.
Therefore there is chosen not to implement these in this tool. Considering that most user will not be using this tool heavily
(only occasionally for making a real disk to play a certain game that must run from disk) speed is not a big issue.
|User manual||In progress||The user manual is very important, because without it nobody will know how to use the device.|
This is perhaps the most underestimated part of the project...
As you can see there are a lot of things already finished but still a
lot of things that need to be done. As soon as the hardware is stable
(which appears to be that way in the 4th version of the PCB) then
things can go very quickly. Because some things (like the NTP GEOS
driver and the disk wizard) can be finished after the release of the
Cassiopei, simply because they are "only" software.
First time right!Nope, never, not when I'm building it.
can call me critical, you can call me indecisive but the design has to
be perfect. Because if it is not it will eventually backfire and result
in complaints and/or patches, that would not be nice.
be changed (most of the times) by uploading a new file through the
bootloader. But a case must fit all computermodels all of the time,
otherwise what's the use of making it work on all computermodels if it
Below a foto of some of my prototypes for the case.
All of the cases shown in that foto have their problems, most regarding
reproduction (badly printable or too much clean up work required
The case with the yellow letters, are actually
engraved letters filled with yellow paint, the results do not
justify the amount of work that has to be put in it. Even when I do it
everything right it still does not look like the way I want it.
I'll keep experimenting untill I get it right. Currently I'm thinking
about covering the PCB on both sides with another PCB, kept apart using
some spacers. This sandwitch construction is very strong and because it
is made of PCB material it can be very cheap and with very high
tolerances. A front made of PCB material will always looks very tidy. I
hope to combine this with 3D printing.
costs and ordering information:
The Cassiopei v2.0 is expected to be officially released in February 2018, it is not possible to pre-order.
have been made to realize this in December but many practical problems
made it impossible to meet this deadline, only a few units
(intended for beta testing) have been build.
|You want to develop your own GEOS auto-exec file but don't know where to start...|
I wrote a small webpage describing what tools I used in order to
assemble the code I wrote for my GEOS auto-exec driver.