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 joke conlang with minimal semantics

SyntaxLang Reserved Defined Words Word Function fo Terminates a noun phrase or verb phrase tu Converts an adjective block or sentence to a noun to Ter

Leo Treloar 1 Dec 07, 2021
Display your data in an attractive way in your notebook!

Bloxs Bloxs is a simple python package that helps you display information in an attractive way (formed in blocks). Perfect for building dashboards, re

MLJAR 192 Dec 28, 2022
Scrapper For Paste.pics

PrntScScrapper Scrapper for Paste.pics If you are bored you can find some random screenshots from prnt.sc Features Saving screenshots Open in Browser

Fareusz 1 Dec 29, 2021
Transform Python source code into it's most compact representation

Python Minifier Transforms Python source code into it's most compact representation. Try it out! python-minifier currently supports Python 2.7 and Pyt

Daniel Flook 403 Jan 02, 2023
CALPHAD tools for designing thermodynamic models, calculating phase diagrams and investigating phase equilibria.

CALPHAD tools for designing thermodynamic models, calculating phase diagrams and investigating phase equilibria.

pycalphad 189 Dec 13, 2022
Backtest framework based on DAGs

MultitaskQueue It's a simple framework based on three composed concepts: Task: A task is the smaller unit of execution or simple a node in the DAG, ev

4 Dec 09, 2021
A python package to manage the stored receiver-side Strain Green's Tensor (SGT) database of 3D background models and able to generate Green's function and synthetic waveform

A python package to manage the stored receiver-side Strain Green's Tensor (SGT) database of 3D background models and able to generate Green's function and synthetic waveform

Liang Ding 7 Dec 14, 2022
An app about keyboards, originating from the design of u/Sonnenschirm

keebapp-backend An app about keyboards, originating from the design of u/Sonnenschirm Setup Firstly, ensure that the environment for python is install

8 Sep 04, 2022
PaintPrint - This module can colorize any text in your terminal

PaintPrint This module can colorize any text in your terminal Author: tankalxat3

Alexander Podstrechnyy 2 Feb 17, 2022
OTP-Bomber - An otp from MPL ID app, which can be spammed

OTP-Bomber An otp from MPL ID app, which can be spammed Note: Only available on

5 Oct 29, 2022
Windows symbol tables for Volatility 3

Windows Symbol Tables for Volatility 3 This repository is the Windows Symbol Table storage for Volatility 3. How to Use $ git clone https://github.com

JPCERT Coordination Center 31 Dec 25, 2022
Think DSP: Digital Signal Processing in Python, by Allen B. Downey.

ThinkDSP LaTeX source and Python code for Think DSP: Digital Signal Processing in Python, by Allen B. Downey. The premise of this book (and the other

Allen Downey 3.2k Jan 08, 2023
Nicotine+: A graphical client for the SoulSeek peer-to-peer system

Nicotine+ Nicotine+ is a graphical client for the Soulseek peer-to-peer file sharing network. Nicotine+ aims to be a pleasant, Free and Open Source (F

940 Jan 03, 2023
Remote Worker

Remote Worker Separation of Responsibilities There are several reasons to move some processing out of the main code base for security or performance:

V2EX 69 Dec 05, 2022
Find all solutions to SUBSET-SUM, including negative, positive, and repeating numbers

subsetsum The subsetsum Python module can enumerate all combinations within a list of integers which sums to a specific value. It works for both negat

Trevor Phillips 9 May 27, 2022
Coderslab Workshop Projects

Workshop Coderslab workshop projects that include: Guessing Game Lotto simulator Guessing Game vol.2 Guessing Game vol.3 Dice 2001 Game Technologies P

Szymon Połczyński 1 Nov 06, 2021
Double Pendulum implementation in Python, now with added pendulums and trails :D

Double Pendulum Using Curses in Python. A nice relaxing double pendulum simulation using ASCII, able to simulate multiple pendulums at once, and provi

Nekurone 62 Dec 14, 2022
Yet another Python Implementation of the Elo rating system.

Python Implementation - Elo Rating System Yet another Python Implementation of the Elo rating system (how innovative am I right?). Only supports 1vs1

Kraktoos 5 Dec 22, 2022
A Linux webcam plugin for BGMv2 as used in our demos.

The goal of this repository is to supplement the main Real-Time High Resolution Background Matting repo with a working demo of a videoconferencing plu

Andrey Ryabtsev 144 Dec 27, 2022
Ergonomic option parser on top of dataclasses, inspired by structopt.

oppapī Ergonomic option parser on top of dataclasses, inspired by structopt. Usage from typing import Optional from oppapi import from_args, oppapi @

yukinarit 4 Jul 19, 2022