As its name indicates, petSD+ was designed to allow Commodore
PET/CBM computers to use SD media for removable storage; like
PET floppy disk drives, petSD+ connects to the PET's IEEE-488
interface. The PET IEEE-488 interface is based on the original
IEEE-488/GPIB interface and uses an 8-bit parallel data bus.
Later Commodore computers, such as the
used an 8-bit serial bus, using a communications protocol based
Devices based on the sd2iec firmware are available that
provide an SD card storage solution for C64 computers, including
hardware device, or non sd2iec based devices such as
Ultimate II or the
Given the availability of existing SD card solutions
for the C64, there was no intention to include C64 compatibility
with petSD+ until a specific request was made from one buyer who
wanted to use petSD+ with a C64.
When Nils was asked about the possibility of using petSD+
with a C64, he felt that "it should be rather easy to build an
adapter cable to use the petSD+ with a custom firmware with the
C64. With a little more effort, it should be possible to switch
menu driven between the serial IEC bus and the parallel IEEE-488
bus at runtime."
Nils has now built and tested a suitable cable and has
integrated IEC support into the petSD+ firmware.
The first release of
NODISKEMU to support IEC bus communications was dated
At first release, Fast Loaders were not supported, only
the slower standard kernal routines worked (400 bytes/sec).
Update : 12/04/2017 Fast Loader Support added
with Firmware Version 2017/04/05
|Fix IEC fastloader for petSD+
The AVR fastloader code is hardcoded for 8
MHz and running the device at other speeds breaks
the timing and thus the support of fastloaders.
But the device can not run at 8 MHz because that
would be too slow to respond in time to the IEEE-488
To fix this, a CPU clock
prescaler is introduced to run at 8 MHz when in IEC
mode and at 16 MHz when in IEEE-488 mode. Replace
the crystal on your petSD+ with a 16 MHz type to
benefit from this commit.
However, take care not to damage the PCB
when you exchange the crystal!
petSD+ devices shipped after 01/05/2017 have the 16MHz
oscillator fitted and are "JiffyDOS Ready"
Update : 28/05/2017 Fast Loader (JiffyDOS)
When I first tried the enhanced
petSD+ firmware with JiffyDOS, I knew that it "felt" much
faster, but wanted to try and quantify the speed
improvements. To that end, I tried loading a few games using
a petSD+ with the previous firmware under Commodore DOS,
then repeated the loads using a modified petSD+ and JiffyDOS.
In short, the speed improvement is almost incredible!
(Read how I upgraded my C64 to JiffyDOS on
Other Fast Loaders
I am not very
knowledgeable on other C64 Fast Loaders, but it should be
assumed that, unless specifically programmed into the petSD+
firmware, they will NOT work with petSD+. Commodore disk
drives are "intelligent" devices, they have a CPU and memory
inside the drive and disk data transfer relies on execution
of code by both the disk drive and the C64 itself.
Fast Loaders typically rely on executing code on both the
computer and the disk drive, such as the 1541. There is an
interesting discussion of the 1541 disk drive and Fast
Ilkka Sjöstedt's blog
1541 – Why so complicated
ATMega1284P MCU used in petSD+ likely does not have
sufficient memory to allow emulation of all of the Fast
Loader options that were produced for the C64, even if Nils
had the time and inclination to code them. It should
therefore be assumed that the only Fast Loader support that
will ever be included in petSD+ is for JiffyDOS. If you have
specific questions or requests for support of additional
Fast Loaders, please
If you don't use Fast Loaders or
only use JiffyDOS, then I think that you will be very happy
with petSD+'s IEC support. However, if you want to use other
Fast Loaders, then perhaps petSD+ is not the device for you
unless you also have a PET. In which case, C64 support
should be thought of as an added bonus, rather than the main
driver for getting petSD+.
devices shipped prior to 01/05/2017 to work with the Fast
Loader compatible firmware is quite straightforward, but in
addition to replacement of the 18.432MHz oscillator with a
16MHz one, the MCU must be programmed with an upgraded
boot-loader. Again, this is a simple task, but requires a
programmer for the MCU.
If you don't have the tools
to carry out the upgrade for yourself, then I
will upgrade petSD+ devices that I built free of charge
if you cover the cost of postage. Drop me an e-mail if you
want me to do the upgrade for you and we can make the
There are very few
known users of petSD+ IEC mode, if you are using it, please
let me know so that I can update this table
User's marked " β
are running "JiffyDOS Ready" version of the
Basic Knowledge and Glossary for GPIB Communication
The Commodore IEC Bus