All Projects → SukkoPera → Open2327romadapter

SukkoPera / Open2327romadapter

Licence: other
Open Hardware 2364-27xxx (E)EPROM Adapter PCB

Projects that are alternatives of or similar to Open2327romadapter

Conjugar
Conjugar is an app for learning Spanish verb conjugations.
Stars: ✭ 27 (-6.9%)
Mutual labels:  hacktoberfest
Tiktok Api
The Unofficial TikTok API Wrapper In Python
Stars: ✭ 940 (+3141.38%)
Mutual labels:  hacktoberfest
Ideoxan
👩‍💻 Ideoxan is a free to use online tool to learn programming.
Stars: ✭ 29 (+0%)
Mutual labels:  hacktoberfest
Opencast Docker
Dockerfiles for Opencast
Stars: ✭ 27 (-6.9%)
Mutual labels:  hacktoberfest
Cape
Cape Core
Stars: ✭ 28 (-3.45%)
Mutual labels:  hacktoberfest
Ds Algo Point
This repository contains codes for various data structures and algorithms in C, C++, Java, Python, C#, Go, JavaScript, PHP, Kotlin and Scala
Stars: ✭ 949 (+3172.41%)
Mutual labels:  hacktoberfest
Julia
The Julia Programming Language
Stars: ✭ 37,497 (+129200%)
Mutual labels:  hacktoberfest
Gatsby Storyblok Boilerplate
Gatsby starter template with Storyblok's headless cms and true preview
Stars: ✭ 30 (+3.45%)
Mutual labels:  hacktoberfest
Cineaste Ios
An iOS application to manage movies you would like to see and movies you have seen.
Stars: ✭ 28 (-3.45%)
Mutual labels:  hacktoberfest
Usefonts
A tool to help designers and developers select their perfect fonts. It uses Google Fonts API to fetch the fonts.
Stars: ✭ 29 (+0%)
Mutual labels:  hacktoberfest
Markdown
A super fast, highly extensible markdown parser for PHP
Stars: ✭ 945 (+3158.62%)
Mutual labels:  hacktoberfest
Stdrename
'stdrename' is a small command line utility to rename all files in a folder according to a specified naming convention (camelCase, snake_case, kebab-case, etc.).
Stars: ✭ 28 (-3.45%)
Mutual labels:  hacktoberfest
Openlauncher
Customizable and Open Source Launcher for Android
Stars: ✭ 945 (+3158.62%)
Mutual labels:  hacktoberfest
Mvvm C Templates
Templates for MVVM-C architecture
Stars: ✭ 27 (-6.9%)
Mutual labels:  hacktoberfest
Kscript Template
📜 Get started with kscript in a few seconds... with colored logs, github actions and more!
Stars: ✭ 29 (+0%)
Mutual labels:  hacktoberfest
Uwp bridge java
Skeleton for packing Java applications for publishing them on Windows Store
Stars: ✭ 27 (-6.9%)
Mutual labels:  hacktoberfest
Godot Python
Python support for Godot 🐍🐍🐍
Stars: ✭ 944 (+3155.17%)
Mutual labels:  hacktoberfest
App Tutorial
Tutorial app which is built in the tutorial
Stars: ✭ 29 (+0%)
Mutual labels:  hacktoberfest
Meshery.io
Site for Meshery, the multi-mesh manager
Stars: ✭ 29 (+0%)
Mutual labels:  hacktoberfest
Groupthink
A collaborative democratic platform built atop GitHub, designed for open policymaking and manifesto writing.
Stars: ✭ 28 (-3.45%)
Mutual labels:  hacktoberfest

Open2327RomAdapter

Open2327RomAdapter is an Open Hardware adapter PCB that allows the use of a 27xxx EPROM in place of a 2364 and other PROMs. This is mainly useful for replacing the KERNAL and other ROMs in VIC-20 and Commodore 64 home computers and 1541 drives.

Board

Summary

The KERNAL ROM in a Commodore 64 is a 2364 model (8 KB), which comes in a 24-pin package. In some cases it is necessary to replace it, but 24-pin EPROMs are not easily available. Besides, in some cases you want to have multiple KERNAL ROMs that you can select with a switch (think about JiffyDOS).

Open2327RomAdapter comes as an adapter PCB that sits inbetween the original socket and the new chip and solves both those problems, by allowing the use of 28-pin EPROMs, which are cheaper and much more common. It also allows the use of EPROMs bigger than the original ROM, with solder pads where switches can be wired to allow the selection of a particular ROM.

Assembly

  1. Solder the R1-R3 0805 SMD resistors first (Note: do NOT install R4, see below). My suggested technique is as follows: put a small blob of solder on one of the pads, then grab a resistor with tweezers, reheat the solder and slide the resistor into it, keeping it flat on the board. Hold it in place with your tweezers and take the iron away. If you didn't place it straight, reheat and correct with the tweezers. Finally solder the other end. It's not that hard, you just need to practice a few times.
  2. Put the pin headers into a solderless breadboard and lay the board on them, with the 0805 resistors facing down (i.e.: you should not see them). Make sure to use the two shortest hole series. Solder into place.
  3. Remove the board from the solderless breadboard. Using flush cutters, cut the top two pins on the right (on the soldering side) so that they are as flush to the board as possible. Repeat with the bottom two pins. Take the socket and do a test fit, it should sit flush to the board.
  4. Turn the board over and solder down the socket. Again, make sure it sits as flush as possible.
  5. You are done! Try to fit the adapter in the socket on your board or solder it down, if you prefer. In both cases, you can trim the pins shorter if you need.

Installation

Open2327RomAdapter has been designed with a Winbond W27C512 EEPROM in mind (and W27E512 should work just as well). This is a 64 KB chip (thus it can hold up to 8 ROM images, more than enough for most needs), which is widely available, cheap and electrically erasable, which avoids the need for a clunky UV-eraser. This is the only part that was thoroughly tested.

Three 0805 SMD resistors must be soldered to the bottom side of the board, according to the following table:

(E)EPROM Size # of images R1 R2 R3 Switchable pads
2764 8 KB 1 0R 0R 0R -
27128 16 KB 2 10k 0R 0R A13
27256 32 KB 4 10k 10k 0R A13, A14
27512* 64 KB 8 10k 10k 10k A13, A14, A15

* This is the only configuration that has been tested. USE OTHER CONFIGURATIONS AT YOUR RISK!

Note that 0R means that you have to install a 0-ohm resistor. Alternatively you can bridge the pads with a solder blob, but don't leave the spot empty. Where the recommended value is 10k, instead, you have some flexibility: probably any value between 5k and 100k will do.

When flashing the (E)EPROM, make sure that every file is exactly 8192 bytes long and just concatenate them. You don't need to use all of the available space, but keep in mind that the unused address lines are pulled high. This means that if you use a 27512 EPROM with a single image and no switches, for instance, the image must be flashed at $E000 (i.e.: as if it was the last of 8 concatenated images).

The adapter has been carefully sized to fit both inside a VIC-20 (tested on the KERNAL and BASIC ROMs on an Assy #250403 board) C64 (tested on the KERNAL of an Assy #250425 board) and a 1541 drive. It can usually be installed in the original ROM socket, with no need to desolder it.

To switch between ROMs, you will need one or more switches. Every switch must connect one of the A13-A15 pads to ground when enabled. A ground pad is available on the board, but any ground spot on the C64 board can be used as well, if easier to reach. Since having more than switch can be cumbersome, a rotary switch can be used as well.

Replacing 2332 ROMs

2332 ROMs only hold 4 Kb of data. This means that you can switch among even more ROM images if you use a bigger EPROM. In order to do this, you will need to free the A12 address line, which requires a few extra steps:

  1. Solder a 10k resistor at R4.
  2. Cut the JP1 jumper open.
  3. Solder another switch between the A12 pad on the bottom of the board and ground.

IMPORTANT: ALWAYS TURN YOUR C64 OFF BEFORE MOVING THE ROM SELECTION SWITCH(ES).

License

The Open2327RomAdapter documentation, including the design itself, is copyright © SukkoPera 2017-2020.

Open2327RomAdapter is Open Hardware licensed under the CERN OHL v. 1.2.

You may redistribute and modify this documentation under the terms of the CERN OHL v.1.2. This documentation is distributed as is and WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES whatsoever with respect to its functionality, operability or use, including, without limitation, any implied warranties OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE or infringement. We expressly disclaim any liability whatsoever for any direct, indirect, consequential, incidental or special damages, including, without limitation, lost revenues, lost profits, losses resulting from business interruption or loss of data, regardless of the form of action or legal theory under which the liability may be asserted, even if advised of the possibility or likelihood of such damages.

A copy of the full license is included in file LICENSE.pdf, please refer to it for applicable conditions. In order to properly deal with its terms, please see file LICENSE_HOWTO.pdf.

The contact points for information about manufactured Products (see section 4.2) are listed in file PRODUCT.md.

Any modifications made by Licensees (see section 3.4.b) shall be recorded in file CHANGES.md.

The Documentation Location of the original project is https://github.com/SukkoPera/Open2327RomAdapter/.

Support the Project

If you want to support the project, you can order the boards from PCBWay through this link:

PCB from PCBWay

You get my gratitude and cheap, professionally-made and good quality PCBs, I get some credit that will help with this and other projects. You won't even have to worry about the various PCB options, it's all pre-configured for you!

Also, if you still have to register to that site, you can use this link to get some bonus initial credit (and yield me some more).

You can also buy me a coffee if you want:

Buy Me a Coffee at ko-fi.com

Get Support

If you need help or have questions, you can join the official Telegram group.

Thanks

The following links were useful during the development of this project:

The following people contributed work:

  • Andre Miller helped with the testing.
  • Tim Abraham suggested and tested the A12 hack.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].