-
Yamaha YPVS controller schematics
05/18/2026 at 21:36 • 0 commentsThis schematic diagram was reverse engineered around 2004 from the original modules my brother asked me to fix. I even posted it on some forums, which unfortunately were killed off by WhatsApp groups.
At the time one of the major challenges was to figure out the internal configuration of the resistor networks which are non-standard types.
The module is composed by an 8051ish microcontroller, an H-bridge, an ADC, a clipping circuit and a hardware watchdog circuit.
![]()
![]()
![]()
-
CP400 standard ROM cartridge (rev.eng)
03/20/2026 at 00:30 • 0 commentsRecreation of a standard ROM cartridge for the CP400 Color Computer, a TRS-Color compatible manufactured by Prologica . (Github link)
The schematics and the board were reverse engineered from the pictures and article from Rafael Ferrari (thanks!)
![]()
![]()
I like to superpose the bottom and top pcb images to figure out the connections using Libre Office Draw. Other programs can be used as long as they provide to adjust the transparency of the images.
![]()
I was intrigued by the bodge wires used on the original cartridge but after analyzing the schematics I could see no reason why the jumpers on the board were not used.
The circuit uses a BJT with a speed-up capacitor on its base to form an inverter for the address line A13 that is used to select either chip is active. That was a very common trick in the 1980s to save on glue logic chips. While such components were not present on the board, it was easy to figure this out given the application.
![]()
-
PIC micro / SDCC on Linux: Quick and dirty installation guide
02/19/2026 at 02:24 • 2 commentsThe standard SDCC and GPUTILS packages does not support PIC microcontrollers, unlike their counterpart on Windows.
To provide them you have to install from the sources. Here's a quick guide on Linux Mint/XFCE 22.3
First Step: Install missing libraries and tools
sudo apt-get update sudo apt-get install bison flex zlib1g-dev libboost-dev libboost-graph-devSecond Step: Download GPUTILS source from https://sourceforge.net/projects/gputils/files/
Create a temporary directory then unpack the sources
cd ~ mkdir tmp1 tar xjf /...path..to...source.../gputils-1.5.2.tar.bz2Enter the sources directory, then configure, compile and install
cd tmp1/gputils-1.5.2/ ./configure make sudo make installThird Step: Download SDCC source from https://sourceforge.net/projects/sdcc/files/
Create a temporary directory then unpack the sourcescd ~ mkdir tmp2 tar xjf /...path..to..source.../sdcc-src-4.5.0.tar.bz2Enter the sources directory, then configure, compile and install
cd tmp2/sdcc-4.5.0/ ./configure make sudo make installIt will take forever, but when it finishes, check if the binary was propely installed
cd ~ sdcc -vThe compiler shall respond with the architectures it support:
SDCC : mcs51/z80/z180/r2k/r2ka/r3ka/sm83/tlcs90/ez80_z80/z80n/r800/ds390/pic16/pic14/TININative/ds400/hc08/s08/stm8/pdk13/pdk14/pdk15/mos6502/mos65c02/f8 TD- 4.5.0 #15242 (Linux) published under GNU General Public License (GPL)The final test is to compile a test program with following command line
sdcc -mpic14 -p16f88 --use-non-free teste.cTest program
#include <pic16f88.h> // Configurações do Microcontrolador (Fuses) // Oscilador interno, Watchdog desligado, Master Clear habilitado unsigned int __at(0x2007) CONFIG1 = _INTRC_IO & _WDT_OFF & _MCLR_ON & _LVP_OFF; void delay(unsigned int tempo) { unsigned int i, j; for(i = 0; i < tempo; i++) for(j = 0; j < 100; j++); // Atraso simples } void main(void) { // Configura o oscilador interno para 8 MHz OSCCON = 0x70; // Configura RB0 como saída digital TRISB = 0xFE; // 1111 1110 (0 = saída) PORTB = 0x00; // Inicia todos os pinos em nível baixo while(1) { RB0 = 1; // Liga o LED no pino 6 (RB0) delay(500); RB0 = 0; // Desliga o LED delay(500); } }The compilation may generate some warnings but at the end the .hex is generated with success.







SHU YANG
Ian Dunn
mircemk
With Z80 CP/M or FUZIX
fcipaq
Phil
Michael Wessel
Mingjie Li
Ken Yap
Michael Murillo
Thanks for liking #Vertical LED digit display boards