Sustituto de PLA para C64 basada en CPLD ATF1502


Quer铆a compartir mi experiencia fabricando un sustituto para la PLA del C64 usando uno de los esquemas que hay en Internet, y todo ello seg煤n la Ley del Ingeniero Ratonil, es decir invirtiendo el menor dinero posible aunque al final acabemos ech谩ndole m谩s horas que un tonto con el soldador :D





Mi anterior experiencia fue un engendro casero de PLA basado en una Flash de Atmel pero con el SD2IEC + Fastload Reloaded no funciona :( Los juegos no cargan, salen caracteres raros en la pantalla y cuelgues cada 2x3. La SD2IEC suelta (sin cartucho) tampoco va mucho mejor. A veces los directorios salen corruptos y tambi茅n se cuelga. As铆 que decid铆 cambiar la PLA-Flash por algo m谩s fiable.

Hay varios fabricantes particulares que venden PLAs ya hechas, pero como la gracia est谩 en hac茅rsela uno mismo, veamos qu茅 hay en Internet:

B谩sicamente ahora mismo hay 2 opciones "libres", y digo libres porque los autores de las placas han publicado generosamente los esquemas, PCBs y el PLD/VHDL para que cada cu谩l se las haga, en contraposici贸n a PLAs como la "PLAnkton", que se venden ya hechas y tanto el esquema como el VHDL est谩n considerados "secreto comercial" (20 a帽os despu茅s de la quiebra de Commodore y en plena era de la informaci贸n).

1. Opci贸n "MattisLind":
- Placa: https://oshpark.com/shared_projects/fJN4h1Z9
- Explicaci贸n y c贸digo: https://github.com/mattisLind/82S100replacement

2. Opci贸n "mcleod_ideafix":
- Placa: http://dirtypcbs.com/store/designer/details/7073/483/pla-replacement-module-for-c64
- Explicaci贸n y c贸digo: http://www.zonadepruebas.com/viewtopic.php?t=3852

Para la placa de mcleod se puede usar una XC9536 (5V, obsoleta) o una XC9536XL (3.3V, tolerante a 5V) si le a帽adimos un regulador LDO como explica 茅l mismo en su p谩gina de dirtypcbs.

Para la de MattisLind se usa una CPLD ATF1502ASL-25AU44, que es de las pocas CPLD de 5V que no est谩 obsoleta (¡¡a煤n!!).

Yo al final me decid铆 por la de MattsLind. Las CPLD andan igual de precio, pero en el mundo de las CPLD hay que mirar toda la cadena compilador - programador - cable - CPLD porque es todo muy privativo y una CPLD de Atmel no se puede programar con un cable USB Blaster de Altera, por ejemplo.

En el caso de Atmel, el software para "compilar" se llama WinCUPL, es gratis y est谩 aqu铆: http://www.atmel.com/tools/wincupl.aspx. El WinCUPL genera un fichero JEDEC que subimos a la CPLD con otro programa gratuito, el ATMISP (http://www.atmel.com/tools/atmisp.aspx).

El programador es un tal ATDH1150USB que cotiza a 60€, a m铆 me parece demasiado teniendo en cuenta que solo sirve para programar la familia de CPLDs de Atmel (son solo 3). Afortunadamente si tenemos un ordenador con puerto LPT podemos hacernos este cable LPT MUY sencillo con un conector DB-25 macho y una resistencia de 33 ohm:



Pues nada, manos a la obra, lo primero fue pedir el material:
  • 3x placas (OSHPark, $5.50). Tiempo en llegar: 23 d铆as.
  • ATF1502ASL-25AU44, $2.38 en http://arrow.com (pedido de $20 para env铆o gratuito), tiempo de llegada 2 d铆as con DHL, y sin parada en aduanas.
  • C 220nF cer谩mico 0805, Aliexpress, cinta de 200 por 2,18€ (tengo condensadores de 220 nF para TODA la vida).
  • 20x tira de 40 pines macho-macho de 0.33 mm de di谩metro para que entre en todo tipo de z贸calos sin demasiada presi贸n, 8.56€

El conector DB-25 y la resistencia de 33 ya las ten铆a de proyectos arcaicos.

Poco a poco fue llegando todo... El premio al embalaje m谩s absurdo y anti-ecol贸gico fue para Arrow:



Las placas con su CPLD lista para montar:



El programador (los 5V para el VREF los cojo de un cable USB cortado por la mitad). M谩s informaci贸n en este post en un foro de Amiga: http://eab.abime.net/showthread.php?t=64218&page=5



Obligada menci贸n al autor original:



Aspecto final:



Montado:



Y funcionando!!!



Autor: este art铆culo es una colaboraci贸n de mjj
Publicado en el foro de Commodore man铆a http://commodoremania.com/foro/index.php/topic,1207

Publicar un comentario

4 Comentarios

  1. The PCB published on:
    http://dirtypcbs.com/store/designer/details/7073/483/pla-replacement-module-for-c64
    contains an error because the TDO signal with GND is short-circuited! I do not understand why nobody reports it. Do not buy that PCB.

    ResponderEliminar
  2. Este comentario ha sido eliminado por el autor.

    ResponderEliminar