drivePACK site
This site is dedicated to the drivePACK and the ROM PACK cartridges. It is organized in the following pages:
   - Introduction
   - drivePACK basic guide.
   - CASIO ROM PACK technical information.
   - drivePACK Editor software.
   - License and downloads.
The following sections in this page provide an overview of the features of the drivePACK device:
   - About drivePACK
   - But... what are ROM PACK cartridges?
   - drivePACK hardware
   - drivePACK firmware
   - drivePACK Editor software
About drivePACK
drivePACK is a CASIO ROM PACK cartridge emulator that works as a memory unit for the 80's and 90's CASIO keyboard models that had ROM PACK cartridges support. Here you will also find other usefull technical information related to the CASIO ROM PACK cartridges.
drivePACK allows to:
    load ROM PACK cartridge files (.DRP) from the SD card and play them on a real CASIO keyboard.
    dump ROM PACK cartridges and store them in files in the SD card (.DRP).
    play keyboard ROM PACK cartridges received from a computer through USB.
    dump existing ROM PACK cartridges and send them to a computer through USB.
    and other...

The drivePack unit.
drivePACK can be used as a standalone device thanks to its 170x128p color screen and user-friendly interface, or as computer peripheral thanks to its USB connection and the 'drivePACK Editor' software. drivePACK also allows to create, load, dump, save, send or receive songs to and from a computer. 'drivePACK Editor' software is a Windows PC software that has been developed with the purpose of facilitating content editing and creating new themes for keyboards with ROM PACK cartridges support.
The drivePack unit in action

But... what are ROM PACK cartridges?
ROM PACK cartridges are a type of memory cartridges used by some CASIO music keyboards from the 80s and early 90s. These cartridges contain melody programs that can be played on CASIO ROM PACK compatible music keyboards (they have a special slot for them usually in the top right corner). A single cartridge may contain multiple melodies, which the user can select by pressing one of the piano keys to play or practice them in different ways on the keyboard, depending on whether the "auto play," or "melody guide" mode is selected. Technical details of CASIO ROM PACK cartridges can be found here .

The "auto play" mode allows to play and listen in the keyboard the selected ROM PACK theme. The "melody guide" mode is intended to help to learn how to play the selected ROM PACK melody: the LEDs over the keys light or blink to indicate the next keys of the keyboard to press while the keyboard plays the backing track. The implementation of this mode may vary on different keyboard models, but in one way or another, all the models allow you to adjust the difficulty level. Some models also rate your performance once you have finished playing the selected theme.

ROM PACK cartridge front and back view.

A ROM PACK cartridge inserted in a SK-8 keyboard.

drivePACK hardware
The drivePack hardware consists of 2 parts: the main unit and the read/write head, both are connected through a 20 wires flat cable.

drivePack: read/write head and the main unit.
The main unit is formed by 2 PCB boards: the base board and the hat board. The base board contains the 32bits microcontroller ( Microchip/Atmel ATSAMD51 ), the power regulator circuit, the SD card slot, and USB to UART adapter. It is based on the bareSAM board, a custom development board inspired in Adafruits Metro M4 board. The hat board includes the user interface controls ( buttons, encoder, LCD ... ) and signal adapters ( 3.3/5V transceiver ) for the ROM PACK bus.

Main unit base and hat board.
The read/write head simply serves as the mechanical adaptation and electrical connection between the CASIO keyboard and the main unit.

Read/write head.

Different prototypes of the drivePACK main unit.

The schematics and other more detailed hardware related information can be downloaded from the license and downloads page.
drivePACK firmware
The firmware of the drivePACK has been developed in C and ARM assembly language using Microchip Studio environment and the Atmel-ICE programmer. C has been used in most part of the code, and ARM assembly only in the parts that require precisse timmings and high speed response to grant the maximum performance and minimum latencies. This applies to routines that emulate the cartridge and require fast read and write operations on the data/addresses bus. This could have been ideally done with a CPLD or small FPGA but it would have increased the complexity and cost of the PCB.

The instructions to get the firmware source code are available in the license and downloads page.
drivePACK Editor software
drivePACK Editor is a Windows PC application created as a complementary software tool for the drivePACK. It allows drivePACK users to process, edit, and store ROM PACK content received from the drivePACK unit on their computer in DRP files. It also allows to send ROM PACK DRP files from the computer to the drivePACK unit for playback. Users can edit files with the included binary editor and send the modified ROM PACK files to the drivePACK unit. Additionally, the application supports the conversion of ROM PACK files to different formats such as .DRP and .BIN. Users can compose new themes and create new ROM PACK files/cartridges. The application offers many other functionalities as well.

the drivePACK Editor.

The instructions to get the drivePACK Editor software are available at license and downloads page.
You can contact me here.
... this page was last updated by Tolaemon on 10-2023 ...

Creative Commons Licence