Program to send ROM files to Turbo Everdrive; reverse-engineered and designed to be platform-independent

Overview

PCE_TurboEverdrive_USB

What is this "TurboEverdrive USB" thing ?

For those who have a TurboEverdrive v2.x from krikzz.com, there was originally an optional USB port for sending files directly from PC to the cart. Developers have been very happy with this functionality, but unfortunately, it is no longer an option at the time of checkout on the site (only initial orders around 2015 had this option, I hear). All of the boards can have the option added later, however.

Note that version 1 boards do not have this option. Also note that there are many boards being sold on ebay and AliExpress calling themselves "Turbo Everdrives", but are not version 2.x TurboEverdrive boards. Be careful to verify which board you have before using this.

What is actually new in this repository ?

The program which krikzz had written for data transfer to the Turbo Everdrive was built only for Windows, and is only a command-line tool.

It can be found here (turbo-usb2.exe): https://krikzz.com/pub/support/turbo-everdrive/v2/usb-tool/

I have taken this tool, and reverse-engineered and reimplemented it in Python so that it can be used on other platforms as well (i.e. linux).

Can I add USB to my TurboEverdrive ?

If you're good at soldering, it's pretty straightforward, although 2022 is a time of chip shortages, so you may not be able to get the required IC chip immediately.

IF YOU ARE NOT EXPERIENCED AT SOLDERING, I STRONGLY RECOMMEND TO REACH OUT TO SOMEBODY WHO DOES CONSOLE MODIFICATIONS FOR ASSISTANCE.

The change itself is pretty straightforward.

ELIGIBLE CARTS

The Turbo Everdrive cartridges versions 2.x are capable of having this added. The cartridges look like this (prior to modification):

Before Modification

And they look like this (after modification):

After Modification

PARTS

You will need:

  1. a USB-B mini socket, surface mount (such as Mouser part 649-10033526N3212MLF)
  2. a FT245RL USB-to-parallel converter chip, SSOP-28 package (such as Mouser part 895-FT245RL-TUBE)

SOLDERING

Be very careful to ensure that the chip's orientation (direction) is correct, and that the pins are soldered without creating any solder bridges, which could cause damage or malfunction. The pins are very close to each other, and solder bridges are very likely for the inexperienced.

PC SIDE SETUP & TEST

You will need to ensure that your PC has the FTDI Virtual COM Port drivers installed (if they aren't already installed).

They can be found here: https://ftdichip.com/drivers/vcp-drivers/

To test:

  1. Insert the TurbEverdrive into a PC Engine (or TurboGrafx) and ensure that it still has original functionality
  2. With the console off, connect a Windows PC to the TurboEverdrive cartridge, open "Device Manager", and expand the "Ports (COM & LPT)" section if you have one.
  3. Turn on the console, and watch the Device Manager enumerate the COM port - there should be a new "USB Serial Device" in the "Ports (COM &LPT) section. Take note of the port number (mine is COM9).
  4. Now try using the original Krikzz "turbo-usb2.exe" to send a ROM file.

How to run the python version

The normal command line is:

python SendTED.py <COM port> <ROM file>

In my case, this would work:

python SendTED.py COM9 testROM.pce

There are ways to change the 'SendTED.py' script into an .EXE file so that 'python' is not needed each time it is run, but I will leave that as an exercise for the reader.

This should also work fine on other operating systems such as linux, but I have not tested it as yet; I would appreciate feedback on this.

For any bugs or issues (for example, with odd-sized ROM files), please file an issue in the GitHub issue log with an example file in order for me to debug.

I hope this is useful !

Dave

Owner
David Shadoff
David Shadoff
A curated list of awesome things related to Pydantic! 🌪️

Awesome Pydantic A curated list of awesome things related to Pydantic. These packages have not been vetted or approved by the pydantic team. Feel free

Marcelo Trylesinski 186 Jan 05, 2023
Tensorboard plugin 3d with python

tensorboard-plugin-3d Overview In this example, we render a run selector dropdown component. When the user selects a run, it shows a preview of all sc

KitwareMedical 26 Nov 14, 2022
A(Sync) Interface for internal Audible API written in pure Python.

Audible Audible is a Python low-level interface to communicate with the non-publicly Audible API. It enables Python developers to create there own Aud

mkb79 192 Jan 03, 2023
This code makes the logs provided by Fiddler proxy of the Google Analytics events coming from iOS more readable.

GA-beautifier-iOS This code makes the logs provided by Fiddler proxy of the Google Analytics events coming from iOS more readable. To run it, create a

Rafael Machado 3 Feb 02, 2022
Spooky Castle Project

Spooky Castle Project Here is a repository where I have placed a few workflow scripts that could be used to automate the blender to godot sprite pipel

3 Jan 17, 2022
An Insurance firm providing tour insurance is facing higher claim frequency

An Insurance firm providing tour insurance is facing higher claim frequency. Data is collected from the past few years. Made a model which predicts the claim status using CART, RF & ANN and compare t

1 Jan 27, 2022
Example platform plugin that fixes fentry calls in Binja

Example Binja Platform Plugin This is an example Binja platform plugin which fixes up linux kernel module calls to __fentry__. __fentry__ is the linux

_yrp 2 Oct 07, 2021
This speeds up PyCharm's package index processes and avoids CPU & memory overloading

This speeds up PyCharm's package index processes and avoids CPU & memory overloading

1 Feb 09, 2022
This repository contains each day of Advent of Code 2021 that I've done.

Advent of Code - 2021 I will use this repository as my Advent of Code1 (AoC) repo for the 2021 challenge. I'm changing how I am tackling the problems

Brett Chapin 2 Jan 12, 2022
Web App for University Project

University Project About I made this web app to finish a project assigned by my teacher. It is written entirely in Python, thanks to streamlit to make

15 Nov 27, 2022
Pylexa - Artificial Assistant made with Python

Pylexa - Artificial Assistant made with Python Alexa is a famous artificial assistant used massively across the world. It is a substitute of Alexa whi

\_PROTIK_/ 4 Nov 03, 2021
Aerospace utilities: flight conditions package, standard atmosphere model, and more.

Aerospace Utilities About Module that contains commonly-used aerospace utilities for problem solving. Flight Condition: input altitude to compute comm

1 Jan 03, 2022
Mommas-cookbook - A Repository About Mom's Recipes

Mommas Cookbook A Repository for Mom's Recipes Contents bacalhau à Gomes de Sá Beef-Rendang bacalhau à Gomes de Sá, recommended by @s0undt3ch One of t

1 Jan 08, 2022
Pymon is like nodemon but it is for python,

Pymon is like nodemon but it is for python,

Swaraj Puppalwar 2 Jun 11, 2022
Python MapReduce library written in Cython.

Python MapReduce library written in Cython. Visit us in #hadoopy on freenode. See the link below for documentation and tutorials.

Brandyn White 243 Sep 16, 2022
A python script for compiling and executing .cc files

Debug And Run A python script for compiling and executing .cc files Example dbrun fname.cc [DEBUG MODE] Compiling fname.cc with C++17 ------------

1 May 28, 2022
dbt adapter for Firebolt

dbt-firebolt dbt adapter for Firebolt dbt-firebolt supports dbt 0.21 and newer Installation First, download the JDBC driver and place it wherever you'

23 Dec 14, 2022
Python script to automate the change of desktop background

wallomator Python script to automate the change of desktop background A python script that automates the process of changing the desktop background. I

Mohammed Haaris Javed 10 Jun 16, 2022
A package selector for building your confy nest

Hornero A package selector for building your comfy nest About Hornero helps you to install your favourite packages on your fresh installed Linux distr

Santiago Soler 1 Nov 22, 2021
A Python application that simulates the rolling of a dice, randomly picking one of the 6 faces and then displaying it.

dice-roller-app This is an application developed in Python that shuffles between the 6 faces of a dice, using buttons to shuffle and close the applica

Paddy Costelloe 0 Jul 20, 2021