Latest Version 1.24 (Pi3)
Latest Version 1.24 (Pi0/1)
Latest Version 1.24 (Pi2)

What's New V1.24

New Features

The Piezo buzzer will now work for the Pi0.
The Pi's temperature can now be displayed on the LCD using the "DisplayTemperature = 1" option.
Added support for 42 tracked D64 images.

Bug fixes

Reworked the code to convert D64s into the internal G64 type image required for emulation.
This fixes a vast range of issues people were experiencing when copying real disks to D64 images.

Fixed bugs with remapping the buttons via options.txt. (If the 4th and 5th buttons were remapped in the options.txt file they would not work in emulation mode)



With the help of a lot of testers I was able to update the timings to a state where compatability is increased for all combinations of;-
    A/B hardware set ups.
    NTSC vs PAL
    Pi0, 1, 3B, 3A and 3B+
    C64, Vic20, Plus4, C128
    1541 and 1581 modes

New Features

If you select a PRG file using the Pi's browser then it will mount it inside a virtual D64 and full emulation will me entered, thus taking full advantage of any fast loader.

When you change the device ID or the ROM your selections will now also be displayed on the LCD screen.

1581 support.

The default 1581 ROM name of 1581-rom.318045-02.bin. That way it can easily be downloaded and copied from here.

The 1581 ROM name is now displayed after mounting an d81 image.

Bug fixes

Fixed the jumpy disk swapping problems when using a rotary encoder in emulation mode.

Fixed the double update on the rotary encoder breaking 1581 support.

Fixed the broken StarFileName option.

Fixed graphical corruption on the HDMI screen after disk image write back.


Pi Zero now supports 1581.

Selected D81 disk images will now be emulated on a Pi Zero.

Buttons are now more responsive on the Pi Zero.

Exit emulation button now works correctly on the Pi Zero.

Bug fixes

Fixed the broken 1581 support for the other Pi platfroms.


Pi 0/1

There is now versions that run on other versions of the Raspberry Pi hardware.

It is best to overclock lower powered Pi devices to get best compatability.

Note: currently the Pi's HDMI screen is not suppported on the Pi 0 or 1.
Note: currently the USB keyboard and drives are not suppported on the Pi 0 or 1.
Note: currently the emulated drive sounds are not suppported on the Pi 0 or 1.

Added T64 Support

T64 files can now be selected.
Pi1541 will copy out all the PRG files inside a T64 and put them inside a D64 that is then used for emulation.
Note: currently only PRG files inside the T64 container are supported.
Note: If you use FB (CBM-FileBrowser) and would like to use T64 files you will need to use the versions found here.
Note/Warning: currently any changes are NOT written back to the T64.

Other Features/Improvements

Slightly neater display list of disk images on the Pi's HDMI screen.

New Options

DisplayTracks = 1
Displays a visualisation of the data of a disk image on the Pi's HDMI screen.

DisplayTemperature = 1
This option will display the temperature of the Pi's CPU on the Pi's HDMI screen.

Bug fixes

Fixed the bug where disk swapping would break when more than 7 disk images were loaded.

Removed the 64K limitation on the icon file size.


New Browse Commands

X? command in now supported.

CD_ command in now does the same thing as CD:_

New disks can now be a G64 or a D64.
When formmatting a new disk just specify the type of disk you would like in the filename as a .D64 or .G64 extention

1541 support

maniac_mansion_s1[lucasfilm_1989](ntsc).g64 now works.
zak_mckracken_boot[activision_1988](manual)(!).g64 now works.

Improved compatibility for the Neon loader. (Still not 100% but a bit better)

D64 images containing extra error information now has that data applied. (Some failing D64 images will now work)

6522 timer IRQs were triggering one cycle too late. This shouldn't make a difference but better to be more accurate.


1541 support

Improved compatibility for 1541.

FB64 Changes.

FB64 has been updated to fix the "Blue Characters" bug that occurs when using 64s with the V2 KERNAL.

Options changes.

i2cLcdUseCBMChar = 1
Gives you the option to use the font specified by the "ChargenFont" option on the OLED.
If you are using Commodore's chargen ROM this will double the amount of lines of text on the OLED.

lowercaseBrowseModeFilenames = 1
When using this option Pi1541 will lower case all file names sent back to the computer.
This can be useful when using FB as it will in-turn display all file names in upper case.

USB drive support.

Any future firmware build placed on a USB drive will be copied over to the SD card.

Bug fixes

Fixed bug with opening PRG filenames longer than 13 characters from inside FB eg portal_v1_pa.prg.


USB drive support (!!!!EXPERIMENTAL!!!! there are issues arising, use at own risk).

Fixed bug with PRG files not loading from the USB

1581 support

Improved compatibility with 1581 (especially when using 1581 JiffyDOS).

Head stepping sound now works in 1581 mode.


USB drive support (!!!!EXPERIMENTAL!!!! there are issues arising, use at own risk).

FB (CBMFileBrowser) can now be used to switch and browse the SD card as well as USB drives.
When you exit the root folder of a drive the list of available drives will no be presented.

The JiffyDOS @CP now works in browse mode.
@CP0 will switch to the SD card.
@CP1 will switch to the first USB drive.
@CP2 will switch to the sencond USB drive.
..and so forth.


USB drive support (!!!!EXPERIMENTAL!!!! there are issues arising, use at own risk).

USB drives with FAT32 file systems can now be read and written.
Currently only the first partition can be used. Drives must be inserted before the Pi is powered up.
Drives can be browsed using the keybaord or the buttons.
Currently FB (CBMFileBroswer) cannot be used to change drives.
All configuration and ROM files still need to be on the SD card.

Bug fixes

Fixed bug with SRQ line preventing the cassette from working.


Bug fixes

Fixed bug - when using the device in browse mode some software was having issues with some file names. This has now been fixed. The best example was SidPlay64.

Keyboard changes.

Alt-Enter will now behave the same as the Insert key (for those using keybaords without an insert key).


Bug fixes

Fixed bug - default mapping for the buttons was broken.

Buttons can now be remapped via the options.txt file. To do so set the following options;-
buttonEnter = A
buttonUp = B
buttonDown = C
buttonBack = D
buttonInsert = E

Where A, B, C, D and E are a number from 1 to 5.

For example, if you wanted button 5 to be Enter and button 1 to be Insert, put the following in options.txt;-
buttonEnter = 5
buttonInsert = 1


1581 Emulation.

With 1581 emulation D81 images can be used.
Note: C128 burst mode is still in development.
Note: Only 512 byte physical sectors are supported.

You will need to add a 1581 ROM file to the root folder you SD card.
You will also need to add the following to the options.txt file
ROM1581 = YourROMName

Keyboard changes.

Alt-L to create autoswap.lst now includes selected drive rom.

Options changes.

OPTIONS.TXT numbers can now be decimal, hex.

Added options to remap the input push buttons.



Pressing "Insert" on a folder will select all images in the folder.

PopDir now hightlights the folder you were in.

ALT-L will create a .LST file form the currently selected images (named "autoswap*.lst").

Keyboard changes.

Pressing a-z/1-0 will jump to the next list entry starting with that letter.
You can now type more than one letter to narrow down the search.

BAM visualisation.

This has been changed to use retangles rather than characters.

Fixed MAJOR bug with 128 in 128 mode not booting.

If the 128 boots or resets after the Pi was booted it would try to use direct access disk commands read the boot sector of a disk whilst the Pi was in browse mode. This could lock up the 128 as it would wait forever for data to return.
This is now detected and fixed. So much so that there is now an option "AutoBootFB128" in the options.txt that if set, will allow a 128 to auto boot FB128 (if it is in the 1541 folder of the SD card).


Fixed MAJOR bug with disks becomming CORRUPTED.

Due to incorrect emulation of CB2 line for VIA2 sometimes the emulator would incorrectly write to disk images just after a reset corrupting them. This has now been corrected.

Keyboard changes.

Pressing a-z/1-0 will jump to the next list entry starting with that letter.
The number keys no longer swap the ROM.
The function keys retain this feature so use them instead.
MUST use F1..F11 for rom and device ID changes.

Home and End keys move to 1st and last entry respectively.

LCtrl+LAlt+Delete can be use to re-boot the Raspberry Pi.

OLED will now display read only files in a unique way

Filenames will be post indexed with the character '<'.

Bug fixes

Fixed bug - changing ROM names now displays correctly.
Fixed bug - some directories werent show as directories.


The selected ROM can now be changed via buttons.

Whilst in browse mode;-
If you have buttons hooked up to the Pi's GPIOs you can hold down button 1 and press one of the other four buttons to change the current ROM the emulator will use.
Button 2 will select your default ROM.
Button 3 will select the ROM configered by the ROM2 parameter in the options.txt file.
Button 4 will select the ROM configered by the ROM3 parameter in the options.txt file.
Button 5 will select the ROM configered by the ROM4 parameter in the options.txt file.

Compatibility fixes

myth_s1[system_3_1989](radwar)(pal) now works with type B configured hardware.

Auto Mount Image Options.

Alt A can be used to reslect the auto mount image set via "AutoMountImage" in the options.txt file.

The AutoMountImage can now also be a .LST file (if you would like multiple disk images to be auto loaded).

Write protection toggle.

Whilst in browse mode, Alt W can be used to toggle the write protection of a disk image.

OLED LCD SSD1306 128x32 is now supported

Add "LCDName = ssd1306_128x32" in the options.txt file.


Device ID can now be changed via keys/buttons.

Whilst in browse mode;-
Keyboard buttons F8-F11 select device ID 8-11. (Note: amount of ROMS that can be swapped has been reduced to 7, ie keys 1-7)
If you have buttons hooked up to the Pi's GPIOs you can hold down button 5 (ie Insert) and press one of the other buttons. Button 1 = 8, 2 = 9, 3 = 10 and 4 = 11.

Compatibility fixes

California Games now works.

Alt N can be used to create a new D64 image.

The naming of the new images can be set via "AutoBaseName" in the options.txt file.

More OLED LCD Options

SH1106 support now works

Scanning of the I2C bus via "i2cScan" in the options.txt file.

Device IDs for the I2C LCDs on the specified I2C bus will be displayed on the Pi's screen.
You can then use this value for "i2cLcdAddress" in the options.txt file.

Bug fixes

Fixed bug - Scratch and New now refresh the browser view.
Fixed contrast setting for sh1106.


Scrolling filenames.

Long filenames will now scroll horizontally to reveal the whole name.

More OLED LCD Options

Option to display a classic 1541 or 1541-II logo on boot up.

Bug fixes

Fixed bug with loading prg files in browse mode with similar filenames.

Escape will now exit an automounted image without re-autoloading it.

The directory preview of a mounted disk image will no longer display scratched filenames.

The demo "Industrial Breakdown" now works.

Inital track display of 00 has been fixed.


Support for Aaction Replay, Epyx Fastloader and Final Cartridge cartridges loading FB64.

To do so place a disk image containing FB64 in the 1541 folder of the SD card then add the following line to the options.txt file;-
autoMountImage = fb.d64
Now whenever the emulated drive is reset the FB64 image will be automatically selected and mounted. You can use your fast loader cartridge of your choice to load it. Once loaded and running you can back out of the FB64 disk image and broswe the SD card as usual.

LCD Options

Contrast for the LCD screen can be adjusted.

Bug fixes

Fixed bug - when backing out of a disk image using FB64 the disk would not be written back if it was altered.


Moved status bar to avoid overlap with 40 track BAM.
Fixed the emulation buttons debouncing issue.
Fixed bug with previous disk button now working as expected when you have a large amount of disks in the set.
When emulation mode is exited with disk images having been modified, messages will now be displayed on the screens to indicate progress and when it is safe to power down the Pi.
Piezo buzzer sound parameters can be modified in the options.txt file.
The I2C LCD screen can be flipped.

See the default Options.txt file for more information.


The filenames of altered disk images are now displayed on screen when saving back to the SD card .
This will occur when emulation is exited.


Fixed the insert/reset button from auto resetting the emulator.


Supports I2C SSD1306 128x64 LCD screen.

Options.txt needs the line;-
LCDName = ssd1306_128x64
and depending upon how you want the keyboard's pgup and pgdown keys to work;-
keyboardBrowseLCDScreen = 1

Splits lines connect
SDA to GPIO 2 pin 3
SCL to GPIO 3 pin 5

Non-split lines
SDA to GPIO 0 pin 27
SCL to GPIO 1 pin 28

VCC to 3.3v and GND to GND.

Option to specify the file LOAD"*" will load.

In the Options.txt file add the line;-
starFileName = filename

Bug fixes.

Improved compatability with inverted split lines hardware configuration.
Fixed bug where modifying an disk image then reseting would cause the disk image to be written back to the wrong folder.

Old Versions.

1.23 Pi3 Pi0/1 Pi2
1.22 Pi3 Pi0/1