GithubHelp home page GithubHelp logo

jgrip / kungfuflash Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kimjorgensen/kungfuflash

0.0 0.0 0.0 2.47 MB

Cartridge for the Commodore 64 that packs a punch

License: zlib License

Makefile 0.33% C 96.01% Assembly 3.66%

kungfuflash's Introduction

Kung Fu Flash

Cartridge for the Commodore 64 that packs a punch.

Kung Fu Flash Launcher

Kung Fu Flash can emulate different cartridge types, load PRG files and use D64 disk images. Just place your desired CRT, PRG or D64 files on a FAT formatted microSD card and use the built-in launcher to execute them.

Hardware

There are three buttons on the cartridge; a reset button, a menu button for starting the launcher, and a special button that is used by the freezer cartridges.

Cartridge Case

The PCB will fit the Stumpy Cartridge Case from TFW8b, you just need to drill some holes for the buttons and make a cut for the microSD card. If you have mounted the USB connector you will need to cut a hole for that as well.

You can also 3D print a cartridge case as the one designed by bigby, see here.

Kung Fu Flash PCB

The gerber files and BOM can be found here.

Supported Cartridges

The following cartridge types are currently supported:

  • Normal cartridge (8k, 16k, Ultimax)
  • Action Replay v4.x/v5/v6
  • KCS Power Cartridge
  • Final Cartridge III(+)
  • Simons' BASIC
  • Fun Play, Power Play
  • Super Games
  • Ocean type 1
  • Epyx Fastload
  • C64 Game System, System 3
  • WarpSpeed
  • Dinamic
  • Zaxxon, Super Zaxxon
  • Magic Desk, Domark, HES Australia
  • Super Snapshot v5
  • Comal-80
  • EasyFlash
  • Prophet64
  • Freeze Frame
  • Freeze Machine
  • RGCD, Hucky
  • Drean
  • C128 Normal Cartridge (external function ROM)

Supported File Types

The following file types are currently supported:

  • Cartridge (CRT)
  • C128 cartridge (ROM, BIN)
  • Disk image (D64, D71, D81)
  • Tape image (T64)
  • Program (PRG, P00)
  • Firmware update (UPD)

USB Port

The USB port is active while the launcher is running allowing programs to be transferred from a PC using the EasyFlash 3 USB protocol. Kung Fu Flash shows up as a standard serial port when connected to a PC not requiring any custom drivers to be installed. This means, however, that the program on the PC side must be modified to support Kung Fu Flash. For that reason a modified version of EasyFlash 3 USB Utilities and EasyFlash 3 BBS has been included in this repository.

Firmware Update

Just place the KungFuFlash_v1.xx.upd file on the SD card and select the file in the launcher to initiate the firmware update. The newest firmware can be found here.

For initial firmware installation, see here.

Limitations

Kung Fu Flash is a so called Software Defined Cartridge where a fast microcontroller emulates cartridge hardware in software. This makes it extremely flexible, allowing different cartridge types to be supported at a relative low cost.

However, it can be challenging to get the C64 bus timing correct in software and in some places the timing is very close to the limit. Even though Kung Fu Flash has been tested on different models of the Commodore 64, there is a chance that it doesn't work correctly on your specific model. Use it at your own risk!

Kung Fu Flash will work with the PAL version of the Commodore 64 or Commodore 128. Support for the NTSC version is still considered experimental.

Disk drive emulation is using kernal vectors and will not work with fast loaders or software that uses direct hardware access which a lot of games does. Currently REL files are not supported and there is only limited write support.

Thanks

Kung Fu Flash was based on or uses other open source projects:

and a few others. Please check the individual files for their license.

Thanks to Bjørn N. Jørgensen for giving this project its name.

Special thanks to the author of Sidekick64 Carsten Dachsbacher for his support and inspiration.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.