Code Monkey home page Code Monkey logo

fds-fd3206-modchip's Introduction

FDS FD3206 Modchip Creative Commons License

A simple "no-wire" modchip for the Nintendo Famicom Disk System HVC-022 Disk Drive. This modchip reverses copy-protection restrictions applied by the Mitsumi FD3206 chip.

Unmodified Quick Disk FD3206 Disk Controller Modified Quick Disk FD3206 Disk Controller

Installation

  1. Start by disassembling your FDS HVC-022.
    • You can follow existing belt replacement guides.
    • Here's a guide from famicomdisksystem.com article.
    • Stop once you reach step 5 of the article above, the removal of the PCB.
  2. Upon closer inspection of the PCB, you will find a large chip labeled FD3206.
  3. Place the ATF16V8A-PU15 programmed with my source code with pin 1 overlapping pin 1 of the FD3206.
    • the orientation is easily noted by the presence of a semicircle on the far-end of each chip's surface.
    • This is the side with pin 1.
  4. Solder the following ATF16V8A-15PU pins:
    • This is the side with pin 1.
  5. It may be necessary to mod your HVC-022 Power Board.

WinCUPL PLD Source Code

There are two versions of the WinCUPL PLD Source Code. The first is my version, which is directly analogous to the write-mod documented on famicomworld.com. The second was generously contributed by LIV2 and is a handy reference. Both version are available in the repo directory.

My Version
Name     FDS3206 Enabler;
PartNo   00 ;
Date     27/07/2022 ;
Revision 01 ;
Designer Stephen;
Company  BetterBit ;
Assembly None ;
Location  ;
Device   g16v8ms ;

/* *************** INPUT PINS *********************/
PIN  1 = clk                                       ;
PIN 13 = ready                                     ;
PIN  5 = write_protect                             ;
PIN  4 = write_gate                                ;
PIN  6 = write_data                                ;

/* *************** OUTPUT PINS ********************/
PIN 12 = Q                                         ;
PIN 15 = !write_head_1                             ;
PIN 14 = !write_head_2                             ;
PIN 19 = write_clk                                 ;


/* ***************** Braining *********************/
/* - Write Data toggles flip flop.                        */
/* - Flip flop enters either a high or low output state   */
/* - Output state maps to "A" position on 74LS45          */
/* - "Ready" maps to "B" position on 74LS45               */
/* - "Write Protect" maps to "C" position on 74LS45       */
/* - "Write Gate" maps to "D" position on 74LS45          */
/*                                                        */
/*        74LS45 TRUTH TABLE                              */
/*     -------------------------                          */
/*    | A | B | C | D | 01 | 02 |                         */
/*    | L | L | L | L | L  | H  |                         */
/*    | H | L | L | L | H  | L  |                         */
/*     -------------------------                          */

Q.d = !Q;
write_clk = !write_data;

write_head_1 = !Q & !ready & !write_protect & !write_gate;
write_head_2 = Q & !ready & !write_protect & !write_gate;

LIV2's Version
Name     FD3206 ;
PartNo   00 ;
Date     27/07/2022 ;
Revision 01 ;
Designer LIV2 ;
Company  BetterBit ;
Assembly None ;
Location  ;
Device   g16v8ms ;

/* *************** INPUT PINS *********************/
PIN 1 = write_data                ;
PIN 3 = ready                     ;
PIN 4 = write_protect             ;
PIN 5 = write_gate                ;
/* *************** OUTPUT PINS *********************/
PIN 14 = Q                     ;
PIN 12 = !write_head_1         ;
PIN 13 = !write_head_2         ;

Q.d = !Q;

write_head_1 = !Q & !ready & !write_protect & !write_gate;
write_head_2 = Q & !ready & !write_protect & !write_gate;

Special Thanks

  • Early PLD guidance and support was provided by Zane Kaminski (GitHub)
  • A version of the source code was generously provided by LIV2 (Twitter) one brief evening when I asked if anyone was available to review my code.
  • Tomy of Tototek for providing closed source mod-chip options (available for purchase at Tototek)

License

This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

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.