Proyectos cacharreo 2021-2024

Proyectos de hardware con sus esquemáticos y si llevan software en fuente

Moderadores: cacharreo, Fundadores

Reglas del Foro
Aquí solo tienen cabida proyectos de hardware que incluyan siempre al menos sus esquemáticos para poder reproducirlos si llevan componentes electrónicos, y si es posible los ficheros del programa en que se hacen, los diseños de las placas, los gerber, etc. Si llevan algún tipo de software asociado debe estar diponible el código fuente

Para los que no cumplen estas condiciones se debe postear en el foro de proyectos generales.
Avatar de Usuario
luisbarna España - Cataluña
Demonio tercer orden
Demonio tercer orden
Mensajes: 753
Registrado: 27 Dic 2022, 12:24
Ubicación: Barcelona
Has thanked: 375 times
Been thanked: 286 times

Re: Proyecto #2327: ZX Spectrum multiROM adapter 0.00

Mensaje por luisbarna »

Si necesitais más ROMs para rellenar los espacios os dejo más links, algunas ya las teneis...

Custom-Made ROM for Spectrum 48k
ZX Spectrum ROM Images
Aquí la página principal donde hay ROMs de otros equipos que quizás puedan servir para el gomas speccy4ever
Trastos:
AMSTRAD CPC464, CPC6128, placa PCW 8512
ZX Spectrum 48k (gomas), ZX Spectrum +, INVES Spectrum +, Spectrum Gris +2, Spectrum +3, ZX Spectrum 128k Toastrack
Commodore 16 (up to 64Kb), Commodore 64
Consolas: Intellivision Secam, Atari 2600 JR
Avatar de Usuario
cacharreo !Sinclair 1
Moderador
Moderador
Mensajes: 6281
Registrado: 09 Ago 2019, 10:17
Ubicación: /home/cacharreo/
Has thanked: 1277 times
Been thanked: 3092 times
Contactar:

Re: Proyecto #2327: ZX Spectrum multiROM adapter 0.00

Mensaje por cacharreo »

luisbarna escribió: 28 Oct 2023, 18:01Si necesitais más ROMs para rellenar los espacios os dejo más links, algunas ya las teneis...
Muchas gracias, Luis. Algunas de esas páginas las conozco, lo que no tengo ni idea es de cómo son las ROM, por eso que he usado las que más o menos sabía cómo eran. Si tenéis recomendaciones se agradecerán. ;)

Cuando tenga una selección de 16, además de grabarla en mi EEPROM la enlazo en el proyecto para quien la quiera grabar sin complicaciones.
© cacharreo
Avatar de Usuario
luisbarna España - Cataluña
Demonio tercer orden
Demonio tercer orden
Mensajes: 753
Registrado: 27 Dic 2022, 12:24
Ubicación: Barcelona
Has thanked: 375 times
Been thanked: 286 times

Re: Proyecto #2327: ZX Spectrum multiROM adapter 0.00

Mensaje por luisbarna »

De nada @cacharreo.
Al final he probado solo unas 6 u 8 que son las que he puesto.
Las que tengo yo seleccionadas, aparte de las ya mencionadas, son:

De esta página :
"(c) 1988 Spectrum Turbo+ V4.4"
HDT-ISO HEX-DEC-TEXT
IMC Altered Ian Collier 1985
JGH ROM V0.76 (C) J.G.Harston
PSYCHO Maly of Illuson Rules /XX ad

De esta página:

plus4 (Andrew Owen)
48-beckman -> de esta he escuchado algo pero no la he probado

Pero vamos, seria ir rellenando con la versión más nueva del resto de ROMs de estas dos páginas (no te las acabas) e ir jugando un poco con ellas para pasar el rato.
En los txt suelen explicar muy bien los cambios que incorporan.
Trastos:
AMSTRAD CPC464, CPC6128, placa PCW 8512
ZX Spectrum 48k (gomas), ZX Spectrum +, INVES Spectrum +, Spectrum Gris +2, Spectrum +3, ZX Spectrum 128k Toastrack
Commodore 16 (up to 64Kb), Commodore 64
Consolas: Intellivision Secam, Atari 2600 JR
Avatar de Usuario
cacharreo !Sinclair 1
Moderador
Moderador
Mensajes: 6281
Registrado: 09 Ago 2019, 10:17
Ubicación: /home/cacharreo/
Has thanked: 1277 times
Been thanked: 3092 times
Contactar:

Re: Proyecto #2327: ZX Spectrum multiROM adapter 0.00

Mensaje por cacharreo »

Que tenga previamente seleccionadas,
luisbarna escribió: 28 Oct 2023, 19:26 IMC Altered Ian Collier 1985
plus4 (Andrew Owen)
48-beckman -> de esta he escuchado algo pero no la he probado
probaré las otras aunque no todas tienen información sobre qué hacen o dejan de hacer.
© cacharreo
Avatar de Usuario
cacharreo !Sinclair 1
Moderador
Moderador
Mensajes: 6281
Registrado: 09 Ago 2019, 10:17
Ubicación: /home/cacharreo/
Has thanked: 1277 times
Been thanked: 3092 times
Contactar:

Proyecto #2327: ZX Spectrum 16/48k multiROM adapter 0.00

Mensaje por cacharreo »

Añadido un fichero con 16 ROM de ejemplo al ZX Spectrum 16/48k multiROM adapter 0.00.
© cacharreo
Avatar de Usuario
cacharreo !Sinclair 1
Moderador
Moderador
Mensajes: 6281
Registrado: 09 Ago 2019, 10:17
Ubicación: /home/cacharreo/
Has thanked: 1277 times
Been thanked: 3092 times
Contactar:

Proyecto #2223: USB Cable Tester 0.00

Mensaje por cacharreo »

cacharreo escribió: 21 Oct 2023, 16:56Faltaría la prueba del cable USB-Lightning pero como los cables que tengo de ese formato infame no los uso y son solo para probar el tester se me pasó pedir uno así.
Añadida la fotografía del cable que faltaba al USB Cable Tester 0.00 que ahora hacen 9 cables con diferentes tipos de conectores USB y derivados.
© cacharreo
Avatar de Usuario
cacharreo !Sinclair 1
Moderador
Moderador
Mensajes: 6281
Registrado: 09 Ago 2019, 10:17
Ubicación: /home/cacharreo/
Has thanked: 1277 times
Been thanked: 3092 times
Contactar:

Proyecto #2333: AY-3-8912 AVR replacement board 0.01

Mensaje por cacharreo »

Módulo de reemplazo para el generador de sonido programable AY-3-8912 que en los últimos años ha sufrido un incremento significativo en su precio. Basado en el ATmega48A esta versión está inspirada por los diseños y el firmware publicados hace años en el proyecto AVR-AY y emula la generación de sonido del chip original soportando tanto las operaciones en modo serie como paralelo.

Según la configuración del firmware, es compatible con los microcontroladores ATmega8, ATmega48, ATmega88, ATmega168 y ATmega328 con frecuencias de reloj de 20, 24, 25, 27, 28, 28.332, 30, 32 y 40MHz aunque, para un ZX Spectrum, no se recomienda usarlo si la frecuencia de Y1 es superior a 27MHz (los resultados óptimos se obtienen con 24MHz ó 27MHz).

El firmware está completamente configurado para su uso con un ATmega48PA y se actualiza del siguiente modo:
- escribir en la memoria Flash el fichero flash.hex
- escribir en la memoria EEPROM el fichero eeprom.hex
- Valor para el byte bajo del fusible (L, Low byte) EE
- Valor para el byte alto del fusible (H, High byte) DD
- Valor para el fusible extendido (E, Extended) FF

En el fichero del firmware se proporciona además un proyecto (.mpj) para la familia de programadores TL866 con todo lo necesario para la programación del ATmega48PA. Es recomendable cargar este proyecto una vez se haya seleccionado como chip el ATmega48P en formato TQFP-32.

De momento y a falta de la emulación del puerto I/O, no es recomendable utilizarlo con un Amstrad CPC porque serviría para emular la generación de sonido pero no la lectura del teclado.

Esquema
Imagen

Lista de componentes (16)
 Qty  Designator  Value  Package 
3R1,R2,R33.6kΩ 1/10W-1/16W 1%0603
1R410kΩ 1/10W-1/16W 1%0603
3C1,C2,C32.2nF 10V0603
3C4,C5,C6100nF 10V0603
1Y124MHzCrystal ceramic resonator 3 pin 3020/3213
1U1ATMEGA48PA-AN⁽¹⁾TQFP-32 7x7mm
1J1UART (optional)Pin header 1x05 𝄩2.54mm
1J2ICSP (optional)Pin header 2x03 𝄩2.54mm
2U2AY-3-8912 socket(Round) Pin header 1x14 𝄩2.54mm
Lista de componentes interactiva
⁽¹⁾ Debe ser esta referencia que, según su hoja de datos, soporta los 20MHz.

PCB
Imagen Imagen Imagen Imagen Imagen Imagen

Fotografías
Imagen Imagen Imagen Imagen Imagen Imagen
Imagen Imagen Imagen

Demo
Imagen
(click para ampliar) (es necesario subir el volumen del reproductor para escuchar el audio)

Gerbers
Descargar (Opcional: encargarlos en placa de 1.20mm. de grosor para reducir la altura del conjunto)

Firmware (26.0)
Descargar
© cacharreo
Avatar de Usuario
mandelbr0t
Seguidor infernal
Seguidor infernal
Mensajes: 27
Registrado: 02 May 2018, 01:07
Has thanked: 1 time
Been thanked: 4 times

Proyecto #2333: AY-3-8912 AVR replacement board 0.01

Mensaje por mandelbr0t »

cacharreo escribió: 31 Oct 2023, 13:47 Módulo de reemplazo para el generador de sonido programable AY-3-8912 que en los últimos años ha sufrido un incremento significativo en su precio. Basado en el ATmega48A esta versión está inspirada por los diseños y el firmware publicados hace años en el proyecto AVR-AY y emula la generación de sonido del chip original soportando tanto las operaciones en modo serie como paralelo.
Interesante. Por aportar algo, he visto que alguien ha hecho reemplazos de los AY más raros con mini fpgas y los fuentes de Jotego https://github.com/jotego?tab=repositories
C:\>_
Avatar de Usuario
cacharreo !Sinclair 1
Moderador
Moderador
Mensajes: 6281
Registrado: 09 Ago 2019, 10:17
Ubicación: /home/cacharreo/
Has thanked: 1277 times
Been thanked: 3092 times
Contactar:

Proyecto #2333: AY-3-8912 AVR replacement board 0.01

Mensaje por cacharreo »

mandelbr0t escribió: 01 Nov 2023, 22:07Interesante. Por aportar algo, he visto que alguien ha hecho reemplazos de los AY más raros con mini fpgas y los fuentes de Jotego
Muchas gracias por la información y el enlace.

Personalmente intento evitar este tipo de dispositivos de lógica programable (CPLD, FPGA,...) por una interminable lista de razones pero creo que siempre va a ser más cómodo para los compañeros trabajar con integrados con alta disponibilidad, que no tengan un ciclo de obsolescencia corto, que preferentemente no estén controlados por un único fabricante que decide a su criterio cuando hay que dejar de trabajar con ellos y, lo cual no es poco, que estén razonablemente documentados (o sea, evitando diseños propietarios que quizás requieran software propietario que ni 20 años después de acabar el ciclo de soporte nadie sabe nada de nada sobre el funcionamiento interno).
© cacharreo
Avatar de Usuario
cacharreo !Sinclair 1
Moderador
Moderador
Mensajes: 6281
Registrado: 09 Ago 2019, 10:17
Ubicación: /home/cacharreo/
Has thanked: 1277 times
Been thanked: 3092 times
Contactar:

Proyecto #2334: ZX Diagnostics ROMbox 0.01

Mensaje por cacharreo »

ROMbox externa para ZX Spectrum (16/48k, 128 y +2,+3,...) con capacidad para 32 ROM diferentes que pueden ser seleccionadas de forma manual o seleccionadas desde el mismo Spectrum (OUT 31,ROM#). Basada en la placa de diagnóstico de Dylan 'Winston' Smith, Alioth Diagboard, a la que se han ido incorporando todas las modificaciones que han surgido con posterioridad y es compatible con la ROM ZX Diagnostics de Brendan Alford (en el slot 0 lleva la ZX Diagnostics v0.38).

Dispone de botones RESET, NMI y conmutadores para especificar el modelo de Spectrum (Sinclair ZX ó TK), habilitar o deshabilitar el uso de /M1 y para encender o apagar la ROMbox (si está apagada el ZX Spectrum arranca con normalidad). Además cuenta con un bloque de interruptores DIP, el primero de ellos sirve cambiar del modo de seleción de ROM automático (ZX) o manual (SET), en este último modo el usuario selecciona la ROM utilizando los 5 últimos interruptores DIP. El identificador de la ROM seleccionada se obtiene sumando los números que hay bajo los interruptores DIP en la posición ON. Por ejemplo, si todos están apagados (en OFF) el modo de selección de ROM es manual y estaría seleccionado el slot/ROM 0; si en cambio estuvieran en ON los interruptores DIP#3 (+8) y el DIP#6 (+1) estaría seleccionado el slot/ROM 9 (9=+8+1).

Cuenta con un conector de bus superior en el que se puede pinchar otra placa de diagnóstico con LED y conectores USB-A hembra que también funciona independientemente (es decir, puede ser conectada tal cual directamente al ZX Spectrum). Esta placa adicional monitoriza 42 señales diferentes (bus de datos, de direcciones, señales de control,...) y 6 tensiones, en total 48 LED. Incorpora además conectores hembra USB-A para conectar voltímetros (o voltímetros/amperímetros) USB para leer las tensiones en sus típicos displays de 7 segmentos.

A elección del usuario el dispositivo puede montarse con un conector de borde (edge) estandar del ZX Spectrum (con lo que no podría conectarse detrás otro periférico) o bien con una tira de pines macho doble (de la que se extraen los pines de la quinta fila), como el que se ve en las imágenes, para utilizarlo con un ZX Spectrum Edge SX, un ZX Spectrum Bus Expander o similar que funcionaría igualmente pero que sí permitiría utilizarlo conjuntamente con otros periféricos.

Esquema
Imagen

Lista de componentes (37)
 Qty  Designator  Value  Package 
1LED1 (optional)PWR [Red]0805
1R1 (optional)330Ω 1/8W 1%0805
1J2ZX BUS (optional)Pin header 2x28 𝄩2.54mm (row 5 must be removed before soldering)
1J2ZX BUS (optional)ZX Spectrum Edge Connector 2x28 𝄩2.54mm
1J1LED BOARDPin socket 2x28 𝄩2.54mm
2R1,R3330Ω 1/8W 1%DIN0204 resistor
1R21kΩ 1/8W 1%DIN0204 resistor
6C1,C2,C3,C4,C5,C6100nF 25VMLCC 𝄩5.00mm
1LED1 (optional)ON [Red]LED ⌀3.0mm
1U474LS32DIP-14 W7.62mm Socket 𝄩2.54mm
3U2,U3,U674LS138,74LS157DIP-16 W7.62mm Socket 𝄩2.54mm
1U174LS273DIP-20 W7.62mm Socket 𝄩2.54mm
1U5AM29F040BDIP-32 W15.24mm Socket 𝄩2.54mm
1RN210kΩResistor network SIP-5
1RN12.2kΩResistor network SIP-9
1SW5ROM PAGEDIP Slide Switch SPSTx06 9.78x17.42mm 𝄩7.62mmx2.54mm
3Q1,Q3,Q52N7000TO-92-3
3Q2,Q4,Q6BS250TO-92-3
3SW2,SW3,SW4ZX/TK,DIS/EN,OFF/ONSS-12D07 SPDT Switch
2SW1,SW6NMI,RESETTactile SPST Switch Angled PTS645Vx39-2LFS
1U474LS32DIP-14
2U2,U374LS157DIP-16
1U674LS138DIP-16
1U174LS273DIP-20
1U5AM29F040BDIP-32
Lista de componentes interactiva

PCB
Imagen Imagen Imagen Imagen Imagen

Fotografías
Prototipo 0.00
Imagen Imagen

Versión actual
Imagen Imagen

Gerbers
Descargar

ROM (ejemplo)
Descargar

 Posición  Binario  DIP  Dirección  Descripción 
0000000⬓⬓⬓⬓⬓⬓00000ZX Spectrum Diagnostics v0.38b
1000001⬓⬓⬓⬓⬓⬒04000ZX Spectrum Diagnostics v0.37
2000010⬓⬓⬓⬓⬒⬓08000Diag ROM v61
3000011⬓⬓⬓⬓⬒⬒0C00048 IMC
4000100⬓⬓⬓⬒⬓⬓10000Flash utility
5000101⬓⬓⬓⬒⬓⬒14000Beckman
6000110⬓⬓⬓⬒⬒⬓18000gw03
7000111⬓⬓⬓⬒⬒⬒1C000ZX Spectrum 48k ROM (EN)
8001000⬓⬓⬒⬓⬓⬓20000ZX Spectrum 48k ROM (ES)
9001001⬓⬓⬒⬓⬓⬒24000ZX Spectrum 48k (EN) (Paging code 95d)
10001010⬓⬓⬒⬓⬒⬓28000Psion Space Raiders
11001011⬓⬓⬒⬓⬒⬒2C000Psion Chess
12001100⬓⬓⬒⬒⬓⬓30000Psion Planetoids
13001101⬓⬓⬒⬒⬓⬒34000Beam Software Hungry Horace
14001110⬓⬓⬒⬒⬒⬓38000Psion Backgammon
15001111⬓⬓⬒⬒⬒⬒3C000Beam Software Horace & The Spiders
16010000⬓⬒⬓⬓⬓⬓40000Ultimate Jetpac
17010001⬓⬒⬓⬓⬓⬒44000Ultimate PSSST
18010010⬓⬒⬓⬓⬒⬓48000Ultimate TranzAm
19010011⬓⬒⬓⬓⬒⬒4C000Ultimate Cookie
20010100⬓⬒⬓⬒⬓⬓50000DStar
21010101⬓⬒⬓⬒⬓⬒54000Parker Star Wars
22010110⬓⬒⬓⬒⬒⬓58000JGH
23010111⬓⬒⬓⬒⬒⬒5C000plus4
24011000⬓⬒⬒⬓⬓⬓60000groot
25011001⬓⬒⬒⬓⬓⬒6400048-busysoft-140
26011010⬓⬒⬒⬓⬒⬓68000sc01
27011011⬓⬒⬒⬓⬒⬒6C000seBasic321
28011100⬓⬒⬒⬒⬓⬓70000hdt-iso
29011101⬓⬒⬒⬒⬓⬒74000psycho
30011110⬓⬒⬒⬒⬒⬓78000TURBO4_4
31011111⬓⬒⬒⬒⬒⬒7C000Diag ROM v1.61
Si se utiliza esta ROM de ejemplo, para cambiar de slot se recomienda utilizar el slot #9, una ROM que es idéntica a la del Spectrum 16k/48k excepto que incorpora una rutina de paginación, por eso es posible cambiar con el OUT a este slot sin incidencias y después usar la rutina de paginación (en la dirección 95d) para pasar a otra ROM.

Código: Seleccionar todo

OUT 31,9
RANDOMIZE USR N*USR 95
o en una sola línea,

Código: Seleccionar todo

OUT 31,9: RANDOMIZE USR N*USR 95
Demo con ZX Diagnostics 0.38b
Imagen
(click para ampliar) (es necesario subir el volumen del reproductor para escuchar el audio)

Demo con Diag ROM v1.61(*)
Imagen
(click para ampliar) (es necesario subir el volumen del reproductor para escuchar el audio)
(*) Los test de RAM se han acelerados para hacer el vídeo más corto. En la realidad duran unos 20s más.
© cacharreo
Responder

Volver a “Proyectos de hardware abiertos”