Archivio

Archivio per la categoria ‘Projects / Repairs’

Riparazione Texas Instruments TI-99/4a

22 September 2021 Nessun commento
Texas Instruments TI-99/4a Repairs (Sept 2021)

Riparate 5 x piastre madri TI-99/4A (PAL) con vari difetti

Difetti:

  • TI-99/4a #1: La scocca di metallo che protegge il pcb e’ deformata ed alcune parti creano dei cortocircuiti sul pcb.
  • TI-99/4a #2: TMS 9918 (U100) VDP inserito nel verso sbagliato (:/), incredibilmente non si e’ bruciato.
  • TI-99/4a #3: TMS 9900 (U600) CPU Morta.
  • TI-99/4a #4: TMS 9900 (U600) CPU Morta.
  • TI-99/4a #5: Apparentemente funzionante. (Note: rimasto acceso per oltre 4 ore non ha presentato nessun problema)

Galleria della riparazione:

Lightbrighting VIC-20 / A1200 Keyboard / A1200 TOP Case

18 September 2021 2 commenti
Lightbrighting Commodore VIC-20

Non ho scoperto assolutamente nulla di nuovo, e’ tutto spiegato in questi video:

https://www.youtube.com/watch?v=8P1OVj0IcqY
https://www.youtube.com/watch?v=4eBynrpdLdk

Sono assolutamente contrario al retrobright ma ho voluto tentare la sorte con uno dei VIC-20 quasi totalmente ingiallito, una tastiera di un’Amiga 1200 e il TOP Cover sempre di un’Amiga 1200.

Molte persone mi hanno detto di provare, ma non essendo d’accordo a questa tecnica non lo mai fatto, ma in un secondo momento e’ arrivato il mio amico Federico di Dato di Retrobitlab
che lo ha provato personalmente ed effetivamente sembrava funzionare, premetto che fin da subito non ci credevo, mi sembrava una cazzata cosmica.

Ok, mi devo ricredere, funziona!, qui di seguito ci sono le varie fasi e tempi di esposizione al sole (una bella giornata di sole!)

VIC-20 (fronte):

  • Iniziamo dalla prima foto appena esposto sotto il sole, poi 6 ore, 7 ore, 7 ore per un totale di 3 giorni = 20 ore.

VIC-20 (retro):

  • Iniziamo dalla prima foto appena esposto sotto il sole, poi 2 ore e 30 minuti, 7 ore e 30 minuti per un totale di 2 giorni = 10 ore.

Amiga 1200 Keyboard:

  • Iniziamo dalla prima foto appena esposto sotto il sole, poi 7 ore e 30 minuti x 3 giorni = 22 ore e 30 minuti.

Amiga 1200 TOP Case:

  • Iniziamo dalla prima foto appena esposto sotto il sole, poi 7 ore e 30 minuti x 3 giorni = 22 ore e 30 minuti.

Non ho utilizzato nessun prodotto chimico e’ bastatato lasciare al sole, non c’e’ altro da dire.

Tecnica del Lightbrighting:

Nuovo firmware per The return of the Hybrid Sid Player v1.14

The return of the Hybrid Sid Player by xAD/Nightfall & Gianluca Renzi (RetroBit Lab)

Basato sul progetto di Markus Gritsch pubblicato negli anni 2011-2015 sul forum dangerousprotypes. Grazie Markus.

Changelog:

v1.14 – 22/8/2021

Added:

  • Illegal/undocumented opcodes to the CPU Emulator:
    • ISC (Combination of two operations with the same addressing mode: INC, followed by SBC)
  • Display emulation clock:
    • I used the same position of the OLED display where the sid Subtunes are displayed (if are present), otherwise if the song doesn’t support subtunes it will displayed in the same position the type of clock speed emulation: |CIA| or |VBI|.

Fixed:

  • DMP files additional information:
    • Display of additional information of the SID when a DMP files is played but there are no additional information to display in the header of the DMP files.
  • CPU timing:
    • Some months ago when i wanted to fix the timing of the 6510 CPU emulator i made an unforgivable huge mistake :-D
  • Random Playing Mode:
    • The load routine try to load a index of a file that don’t exist and everything freeze.
  • File error handling:
    • When an load error occurs and you are in the TUNEINFO mode the player don’t back to the FILE Browsing mode.

Nuovo firmware per The return of the Hybrid Sid Player v1.13

The return of the Hybrid Sid Player by xAD/Nightfall & Gianluca Renzi (RetroBit Lab)

Basato sul progetto di Markus Gritsch pubblicato negli anni 2011-2015 sul forum dangerousprotypes. Grazie Markus.

Changelog:

v1.13 – 3/8/2021

Added:

  • Illegal/undocumented opcodes to the CPU Emulator:
    • RLA (Combination of two operations with the same addressing mode (Sub-instructions: ROL, AND))
  • From an idea of Faber Pixel we have also added other information of the SID file on the small OLED screen (information available in the header of the file).
    • With a frequency approximately of 7 seconds, the Load Range, Init Address and Play Address in hex addresses will be displayed on the screen alternating with the information of the SID Name, Author and Copyright.

Sample:

  • Range: $1000-$2275
  • Init Address: $1000
  • Play Address: $1003

Obviously the displayed address range is the real memory occupation.

Fixed:

  • The visualization of the SID Model of the tune that is playing every 5 seconds alternated between the playback mode icon. (Thanks Gianluca Renzi)
  • Missing the file error handling in the subSong subroutine.

Nuovo firmware per The return of the Hybrid Sid Player v1.12

The return of the Hybrid Sid Player by xAD/Nightfall & Gianluca Renzi (RetroBit Lab)

Basato sul progetto di Markus Gritsch pubblicato negli anni 2011-2015 sul forum dangerousprotypes. Grazie Markus.

Changelog:

v1.12 – 18/07/2021

Updated:

  • Improved a little bit the file error handling.
    • If you try to load a SID Stereo file a message “Stereo SID detected, but cannot play it!” will be displayed on the OLED screen.
  • Modified the modality of visualization of the SID Model of the tune that is playing.
    • Now the display of the SID Model is alternated between the playback mode icon approximately every 5 seconds.

Added:

  • Message during the boot that warns a checking of the USB storage and the correct filesystem mounting of the USB pen drive.
  • Added six duplicate and probably useless opCodes, we are speaking about the “NOP” (they are $1A, $3A, $5A, $7A, $DA and $FA)
  • Added one opcode absolutely useless for our use, we are speaking about the “JAM”.

Fixed:

  • Fixed some opCodes Addressing mode (Accumulator Addressing instead of Immediate Addressing)

Nuovo firmware per The return of the Hybrid Sid Player v1.11

The return of the Hybrid Sid Player by xAD/Nightfall & Gianluca Renzi (RetroBit Lab)

Basato sul progetto di Markus Gritsch pubblicato negli anni 2011-2015 sul forum dangerousprotypes. Grazie Markus.

Changelog:

v1.11 – 22/06/2021

Updated:

  • Decreased more than before the brightness of the display after 10 seconds if no activity is done on the buttons or encoder.
  • Slighty improved the timing (CPU cycle) of the 6510 emulator but we are far from my perception of absolute perfection :-D

Added:

  • Illegal/undocumented opcodes to the CPU Emulator:
    • RRA (Combination of two operations with the same addressing mode (Sub-instructions: ADC, ROR))
  • Automatic hardware SID switch between ZIF Socket #1 and ZIF Socket #2 (example if it is made only for 6581 or 8580).
    • This features is included in the prototype pcb. The swap will be displayed by a led placed on the lower part of the ZIF Socket.
  • Improved a little bit the file error handling.
    • If you try to load a file not supported a message “Wrong file format” will be displayed on the screen.
    • If you try to load a RSID file format a message “RSID detected, but cannot play it!” will be displayed on the screen.

Nuovo firmware per The return of the Hybrid Sid Player v1.1

The return of the Hybrid Sid Player by xAD/Nightfall & Gianluca Renzi (RetroBit Lab)

Basato sul progetto di Markus Gritsch pubblicato negli anni 2011-2015 sul forum dangerousprotypes. Grazie Markus.

Changelog:

v1.1 – 30/05/2021

Added:

Firmware Upgrade.

  • The update can be done in three ways, one is automatic.
    • 1) The automatic firmware installation is done in case the bootloader doesn’t find any valid application installed.
    • 2) By pressing the SW1 button at the same time with the reset button or at power-on and released it.
    • 3) Using the file browser (the same used to browse the *.SID / *.DMP files), just choose the file with the firmware and it will be installed.
  • A status bar with a scrolling bits displays the writing status of the firmware.
  • The firmware update file must be copied and NOT renamed to the root directory of the USB flash drive.
  • Added some illegal/undocumented opcodes to the CPU Emulator:
    • SRE (LSE) Combination of two operations with the same addressing mode (Sub-instructions: EOR, LSR)
    • DCP Combination of two operations with the same addressing mode (Sub-instructions: CMP, DEC)

Il solito Recap Amiga (A1200-A600)

A usual Amiga Recap (A1200-A600)

Questo e’ il solito post della sotituzione dei Condensatori Elettrolitici Amiga.

A differenza dell’Amiga 1200 che non presentava nessun problema di fuoriuscita di acido dai condensatori, ma sono stati comunque sostituiti, l’Amiga 600 era in uno stato drammatico, ma con un po’ di pazienza e una buona pulizia tutto ha ripreso a funzionare perfettamente.

Si, per rimuovere i condensatori ho fatto la tanto odiata “torsione” del componente, ok, detto questo, il lavoro e’ riusciuto bene di conseguenza non rompetemi i c*glio*i , grazie.

Galleria della riparazione:

Nuovo firmware per The return of the Hybrid Sid Player v1.05

The return of the Hybrid Sid Player by xAD/Nightfall & Gianluca Renzi (RetroBit Lab)

Basato sul progetto di Markus Gritsch pubblicato negli anni 2011-2015 sul forum dangerousprotypes. Grazie Markus.

Changelog:

v1.05 – 18/05/2021

Updated:

  • Made a single subroutine for the index eeprom write instead of repeating it many times in the code.
  • Increased the display time of the sid model to 3 seconds.
  • The action to clean the data in the eeprom has been changed.
    • Now for reset the default settings just hold down the MODE button during boot until the message “Reset Default Settings” appears and then release it, the player will reboot.

Added:

  • Faster than hell! :D
    • Now when you are in the browsing sid files section you can also use the PREVIOUS or NEXT buttons to quickly scroll the list in both directions.
  • You are Sleeping ? :D
    • If you fall asleep while you listening a SID tunes and you are in the browsing sid files section after 30 seconds the player will automatically switch to the tuneinfo/vu-meter view mode. (available only if you are playing SID o SID/DIGI tunes , no DMP)
  • Added some illegal/undocumented opcodes to the CPU Emulator:
    • SHA
    • SHS
    • SBC ($EB)
    • ASR
    • ANC
    • ARR

Fixed:

Nuovo firmware per The return of the Hybrid Sid Player v1.04

The return of the Hybrid Sid Player by xAD/Nightfall & Gianluca Renzi (RetroBit Lab)

Basato sul progetto di Markus Gritsch pubblicato negli anni 2011-2015 sul forum dangerousprotypes. Grazie Markus.

Changelog:

v1.04 – 02/05/2021

Updated:

  • Browsing files enhancement.
    • There is no longer block on the first and last file of the list, it resumes browsing from the first or last (like Next/Previous).
  • Improved a slight the timing of writing on the real SID (CS – Chip Select Signal).

Added:

  • Reset Default Settings (Clear EEPROM Data).
    • When you are in the BROWSER mode hold the MODE button for 4 seconds and the player clean all data in the eeprom and reboot.
  • Added some illegal/undocumented opcodes to the CPU Emulator:
    • SLO
    • AXS (SBX) *1
    • LAX *1
    • SAX *2
    • SHY
    • SHX
  • Finally these sid tune now works correctly:
    • Wasted_All_These_Years (*1 & *2)
    • Party_Horse (*1 & *2)
    • Lunatico_side_1 (*1)
    • Intertwined (*1 & *2)

Fixed:

  • The problem of a folder with more than 255 sid files, starting from the 256th the index is not written to the eeprom.

Come è nato il progetto The Return of the Hybrid SID Player?

28 April 2021 7 commenti
The Return of the Hybrid SID Player

In questo post cercherò brevemente di riassumere la cronostoria del progetto “The Return of the Hybrid SID Player”.

Da sempre ho avuto la scimmia di costruire un SID Player standalone che non fosse completamente emulato, in quanto sono un Purista dei brani musicali SID e del CHIP sonoro SID (6581/8580).

Negli ultimi anni ho provato diversi SID Player, e nell’ultimo periodo mi sono concentrato sull’emulatore SID di Bakisha (basato su MCU STM32F407VET6 che adoro) upgradandolo aggiungendo un display OLED ILI9341 e alcune informazioni a schermo.

Sfruttando lo stesso progetto, ma questa volta utilizzando l’MCU STM32F401CCU6, ho invece aggiunto la possibilità di pilotare un SID Reale (ringrazio Bakisha per il prezioso supporto).

Purtroppo il Player era rimasto in uno stadio embrionale, almeno rispetto quello che avevo in mente e alle aspettative che ritengo si debbano avere da un software di quel tipo.

Dopo aver cercato in rete (per evitare di perdere tempo a reinventare la ruota) ho trovato il progetto Hybrid Sid Player di Markus Gritsch, pubblicato sul forum Dangerousprototypes e rilasciato tra il 2011 – 2015.

Il progetto di Markus prevedeva, oltre l’emulazione del SID, anche l’utilizzo di un SID reale esterno, di un display OLED, un Browser dei files con la possibilità di utilizzare un Encoder Rotativo e VU-METER, SID Digi in formato PSID (pre HVSC #50), e SID con multi Tunes, oltre ad un formato proprietario chiamato DMP, che permetteva anche di poter ascoltare (dopo una semplice conversione) i files SID nel nuovo formato RSID.

Purtroppo la CUI32 DEV Board sulla quale era stato sviluppato il Player non è più disponibile da molti anni, quindi per assemblare il progetto ho utilizzato la DEV Board PIC32-T795 di Olimex, basata sullo stesso MCU Microchip PIC32MX795F512H.

The Return of the Hybrid SID Player

Tutto ha girato praticamente da subito, ma purtroppo mancavano alcune importanti funzionalità. Ho pensato di contattare Markus per sapere se fosse intenzionato a continuare con il progetto, ma purtroppo non era più interessato e, tra l’altro, sorpreso che il sorgente si compilasse anche con la nuova versione dell’MPLAB X IDE di Microchip.

A quel punto non ho potuto fare altro che iniziare lentamente a leggere e comprendere il codice sorgente da lui scritto, riuscendo ad aggiungere diverse caratteristiche (che potete leggere nel changelog riportato di seguito).

Una volta raggiunta una buona stabilità del firmware mi son detto: ora bisogna fare il PCB! Non posso tenere tutto sulla breadboard, in quanto non è decisamente indicato lavorare con segnali audio Analogici su una Breadboard, sopratutto se sei un purista del suono e del SID!

Da solo però non ce l’avrei mai fatta a realizzare un progetto del genere, avevo assolutamente bisogno di una mano. Ho pensato così di contattare Gianluca Renzi di RetroBit Lab, persona con un’ottima esperienza in Elettronica, PCB design e Programmazione. La mia idea gli è piaciuta fin da subito, ed ha preso a cuore il progetto disegnando da zero lo schema elettrico, occupandosi della scelta dei componenti e curando alcune critiche sezioni di alimentazione. Non sto ad elencarvi tutte le prove che abbiamo fatto, ma vi assicuro che sono state tante!

Pignolo e Paranoico io e Pignolo Gianluca, dopo diversi mesi, siamo riusciti a partorire il prototipo dello stampato che potete vedere qui di seguito.

Attualmente manca la stampa del PCB e il relativo assemblaggio dei componenti, testarne il funzionamento e, nel caso di problemi, applicare dei fix volanti, correggere lo schema elettrico e di conseguenza lo stampato.

L’ultimo passo sarà quello di scrivere una breve documentazione e rilasciare tutto su GITHUB, in modo che chiunque possa avere modo di autocostruirsi il proprio SID Player e, nota importante, di aggiungere funzionalità al software, risolvere bug oppure, perché no, riscrivere anche tutto da zero! Lo stampato lo permette ed è stato pensato per essere dinamico e adattarsi alla fantasia e alle esigenze del programmatore.

Gallery:

Video:

…altri video qui.

Changelog:

The return of the Hybrid Sid Player by xAD/Nightfall & Gianluca Renzi (RetroBitLab)

Based on the Project and Hardware Schematic by Markus Gritsch released in the years 2011-2015 on the forum dangerousprototypes. Thanks Markus.

v1.03 – 01/04/2021

Updated:

- Reset Timer when the MODE key is pressed for the following modes: SEQUENTIAL – RANDOM – INTRO.
- Replaced the code for the EEPROM emulator with a real EEPROM 24LC256 (BitBang/I2c Mode). No more Timing Problem.

Added:

- Serial Debug via UART1 (RD3).
  The firmware will be released in two differents versions, one with the Debug enabled and one without.
- Splash Screen Logo.
- New fourth choice for the button MODE, it’s called The INTRO mode. (i like it!)
  It will play the first 15 seconds of the SID and then automatically select a new one at Random.
  If you like the SID you are listening to just press the MODE button to switch to Manual MODE and the SID will not change.
  This option remindful the old MP3 players that had the INTRO option to listen the first 30 seconds of the music track.
 
Fixed:

- Missing INCLUDE to remove the error “unable to resolve the symbol… tolower()” but MPLABX compile the code anyway :D
- The label of the SID Model Version in case the sid have subsongs is too large, fixed with a workaround. I am realizing now this OLED screen is too small :-D

Various:

- Cleaned up a bit the code with some unused functions.

v1.02 – 04/03/2021

Updated:

- Changed connection of Buttons [Previous|Next] (RB0 & RB1) because are conflict with the ICSP (thanks Gianluca Renzi [Te lo avevo detto! :D]) to RB3 and RB4,
  RB2 is already used by the MODE button.

Fixed:

- Reset timer when the playing MODE is changed.
- SID Model Version displayed accidentally when the playing MODE is changed.
- Pseudo Random.
- *DMP (Dump) Custom File Format Broken in the previous version v1.01.

* The DMP is a custom file of the original RSID format after a conversion.
  More information here: http://dangerousprototypes.com/forum/index.php?topic=2197.msg41618#msg41618

Various:

- Optimizing code.

v1.01 – 23/02/2021

Added:

- Button MODE for choose how to play the song: MANUAL – SEQUENTIAL – RANDOM.
  Since can’t implement songlenghts, the song changes every 2 minutes.

v1.0 – 09/02/2021

Updated:

- Adjusted Brightness when is used a OLED Display 1.3″
- 2 Secs wait time for the SpashScreen.
- Modified Splash Screen.

Added:

- Button for Next SID in the same folder and it start from the first one when reach the last one.
- Button for Previous SID in the same folder and it start from the last one when reach the first one.
- SID Model Version when Playing a SID, displayed the firsten 3 seconds and then show again the play icon .

Todo:

- Draw a Circuit Diagram with some enhancements and make a Prototype PCB and share the project for all. *This is NOT a commercial project*

- Update the FATFS Library by ChaN
– http://elm-chan.org/fsw/ff/00index_e.html

- Add Illegal Opcodes to the 6502/6510 Emulator and also Optimizing the CPU Emulator.
– https://www.oric.org/ftp/ceo/ceomag/downloads///ebooks/nomoresecretsnmos6510.pdf
– http://www.oxyron.de/html/opcodes02.html

- SID Playlist.
- Realtime Switching 6581/8580 if ARMSID is used.
- Use the Button MODE to open an advanced setup menu.
- Loading files error handling.

- Add Firmware Upgrade via USB Pen Drive.
– https://www.eeweb.com/wp-content/uploads/articles-app-notes-files-pic32-bootloader-1335647102.pdf

Selcom Lemon II Riparazione Floppy Drive e Pulizia

Selcom Lemon II Floppy Drive Repair and Clean

Selcom Lemon II Floppy Drive Repair and Clean.

Difetto: Il motore del Floppy Drive gira e il LED rimane acceso ma la testina di lettura/scrittura non si muove e non legge nulla. Questo e’ un classico guasto dovuto ad un errato inserimento del connettore Floppy Drive nel connettore maschio lato scheda Controller Floppy Drive.

Inserendo il connettore spostato di una fila esternamente le alimentazioni di conseguenza arrivano nei posti sbagliati e il primo integrato ad esplodere nel vero senso della parola e’ il 74LS125 (vedi foto).

Sostituito l’integrato tutto ha ripreso a funzionare regolarmente.

Approfittando della riparazione ho pulito l’interno del Computer LEMON II ed eseguito il DUMP delle EPROM, inoltre ho pulito e lubrificato le parti meccaniche del Floppy Drive.

Galleria della riparazione:

Download: Selcom Lemon II ROM EPROM Dump (724)

Riparazione e Recap di due Atari Lynx II

2 x Atari Lynx II Repair and Recap

Il primo Atari Lynx II non si accendeva, ma alimentando la console a 5v bypassando lo stadio alimentazione funzionava correttamente.

Ho dovuto sostituire oltre a tutti i condensatori elettrolitici anche i componenti critici dello stadio di alimentazione.

  • 1 x MOSFET MTDJ055E with a equivalent one.
  • 2 x Transistor 2N3906.
  • 1 x Zener Diode 1N5991B.
  • 1 x 120 Ohm resistor.

Il secondo Atari Lynx II funzionava correttamente di conseguenza ho sostituito solo i condensatori elettrolitici.

Galleria della riparazione:

Hybrid SID Player + SID 8580R5 running on Olimex PIC32-T795

Hybrid SID Player with a real SID 8580R5 running on Olimex PIC32-T795

Hybrid SID Player con SID 8580R5 e dev board Olimex PIC32-T795:

Dopo aver provato il SID Player di Bakisha e aver aggiunto alcune funzionalità (es: Big LCD ILI9341 / Real Sid) il tutto ovviamente con l’aiuto di Bakisha, grazie Branko

Ho voluto anche provare l’Hybrid SID Player di Markus Gritsch. Lo schema (omettendo alcuni componenti) e il firmware sono rimasti invariati e sono stati rilasciati alcuni anni fa (2011-2012) da Markus Gritsch nel forum di Dangerous Prototype.

Poiché la scheda DEV CUI32 dove era stato sviluppato l’Hybrid SID Player non è più disponibile da molti anni, ho utilizzato la scheda DEV PIC32-T795 di Olimex basata sullo stessa MCU PIC32MX795F512H.

Ho dovuto fare un hack sulla scheda di sviluppo PIC32-T795 perche’ i due piedini della MCU utilizzati per l’encoder rotativo non erano disponibili perche’ utilizzati per l’RTC, mi e’ bastato rimuovere dalla scheda PIC32-T795 il MHz Crystal e due condensatori, quindi ho dovuto saldare due fili direttamente sul pcb della dev board.

Lo scopo di tutti questi esperimenti è apportare alcune modifiche hardware e nuove implementazioni al progetto finale che sceglierò e quindi creare un circuito stampato all-in-one e renderlo pubblico a chiunque voglia costruirlo. 

Gallery:

Video:

STM32F40x SID Player by Bakisha with LCD and ARMSID

Continuano gli esperimenti con STM32 e il SID Player di Bakisha. Ringrazio Branko (Bakisha) per il supporto e la pazienza.

Ho aggiunto il supporto LCD (ILI9341) per il SID Player sulla STM32F407VET6 DEV Board.

… e un SID esterno per il SID Player sulla STM32F401CCU6 DEV Board.

Ho utilizzato l’ARMSID di Nobomi, ma funziona discretamente anche con il SID 8580R5, si evidenziano solo alcuni problemi di Timing che bisogna sistemare.

STM32F407VET6 SID Player + LCD (ILI9341) Video:

STM32F401CCU6 SID Player + ARMSID Video: