Archivio

Archivio per la categoria ‘Sid Player’

Il mio SID Player riproduce i brani SID con il SIDKick-pico

Ho voluto provare il SIDKick pico anche con il mio SID Player, tutto ok, funziona bene come mi aspettavo.

Il LED verde acceso subito sotto il Socket del SID indica che sta suonando il SIDKick.

Video:

SIDKick-Pico by Frenetic

27 January 2024 2 commenti

SIDKick pico di Frenetic è un sostituto del chip SID per C64 basato su microcontrollore. Gli ingressi analogici per paddle e mouse sono disponibili proprio come per il SID originale.

SIDKick pico utilizza un firmware simile al suo “fratello maggiore” SIDKick. Tuttavia, la variante pico si basa sulla scheda Raspberry Pi Pico che utilizza il microcontrollore RP2040 che è molto più economico e ha una migliore disponibilità rispetto al Teensy utilizzato dal normale SIDKick.

Caratteristiche tecniche:

  • Doppia emulazione 6581 e/o 8580 basata su reSID 0.16 (opzionale: riproduzione delle digitalizzazioni audio).
  • Indirizzo 2° SID a $d400, $d420, $d500, $d420 + $d500 contemporaneamente, $de00, $df00 ($d500 non è disponibile sul C128) o qualsiasi indirizzo quando viene utilizzato un segnale di CS esterno (ad es. sulle schede Ultimate 64).
  • Supporto paddle/mouse.
  • Menu di configurazione integrato (avvio con “SYS 54301″/”SYS 54333″, anche dalla modalità C128).
  • Uscita audio tramite PWM (mono) tramite la scheda madre C64/C128 o in stereo utilizzando una scheda PCM5102A-DAC.
  • LED RGB lampeggiante (WS2812) su GPIO 23 (installato su alcuni cloni Pico)

La mia opinione personale:

La mia opinione personale da purista incallito e che nessuna emulazione o implementazione avra’ la resa sonora del SID nativo (6581/8580).

Posso accettare come una buona implementazione l’FPGASid e ARMSid dove gli sviluppatori hanno fatto veramente un buon lavoro.

Il SIDKick si difende bene ed e’ a basso costo, inoltre e’ Open Source, inoltre ha una simpatica caratteristica che ho trovato molto carina, ha il software di configurazione integrato che puo’ essere eseguito con un semplice SYS sia in modalita’ C64 che 128.

Dunque la mia opinione finale e che la maggior parte delle persone non notera’ mai nessuna differenza, ma vi assicuro che le differenze ci sono, dunque lo consiglio a tutti almenoche’ non siete puristi del SID.

Nota:

L’uscita audio e l’emulazione migliora se utilizzate la scheda aggiuntiva PCM5102A-DAC, nel mio test ho scelto di non utilizzarla perche’ volevo mostrarvi un plug’n'play senza troppi cavi, jack e patch. Forse era meglio includere questo modulo aggiuntivo direttamente sul PCB del SIDKick ? forse.

Il KIT e’ stato acquistato da restore-store.de, spedizione veloce e servizio impeccabile.

Galleria della scatola della spedizione:

Galleria:

Video:

source: c64-wiki.com github.com/frntc/SIDKick-pico restore-store.de

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

24 February 2023 1 commento

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.22 – 6/2/2023

Note:

  • From this release the new versions will be developed and tested on the v2 prototype PCB and no longer on the Breadboard prototype.

Added:

  • Software implementation of the new audio Switcher.
  • Added a new value (0: Nothing) to the DEFAULT_SID_SOCKET in the configuration file (config.ini).

  # Choose the default SID Socket on bootup (0: Nothing – 1:Socket #1 – 2:Socket #2) – default: 1
  DEFAULT_SID_SOCKET=1

  • Added control via MCU of the power-up led. It might come in handy for future implementations.

Updated:

  • Updated label on the oled display for the “sid switch” mode, now “sidSet” is written and not just “sid”
  • Updated boot screen with the text “sorting files…” if the folder contains too many files (max 800).

Fixed:

  • The encoder cannot be used for manual SID SWITCH mode in case the SID tune played is multitunes because the encoder is used to select the songs, so although the “sidset” option will be displayed on the display in this  specific case the selection of the sid socket will not working.
  • Logic for the switch of the Socket SID with which to play the song and the consequent LED.
  • Default SID Socket if nothing is specified in the config file (config.ini)
  • Manual “sid switch” mode, the SID that was played with this mode would stop after 2 minutes and start over.

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

29 September 2022 1 commento

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.21 – 29/9/2022

Added:

  • A new MODE has been added and can be used with the MODE key while you are in TUNEINFO screen.

This mode allows to change the SID model in realtime while the music is playing.

Example:

If a SID music is played with the SID 8580 positioned on SOCKET #1 by choosing the ‘sid’ mode you can with the encoder turning it to the Right or Left choose the SOCKET #2 where for example where is installed a SID 6581. The led placed under the Socket will show the sid you have chosen.
 
An apparently useless option which, however, can be used to experiment the differences in reproduction of the piece of music with two different SID models or choose the most appropriate sid model if the SID not specified the SID to be used.
 
So in summary we have these choice with the mode key while you are in TUNEINFO screen.

- Single Play
- Sequential Play
- Random Play
- Intro Play
- Sid Switch

Updated:

  • Source code description.

Fixed:

  • Missing the default value of the startSong in the SID Header if this value is missing. The SidPlayer sets 255 and try to play it.

I only found one SID with this strange configuration : Hammer Down by Sean Connoly.  Fixed by setting it to the default value : 1.

  • The player freezes while browsing file system folders with many *.sid files.

This happens when the driver scan the file system and immediately after is done the bubble sort routine that takes about 700ms for 512 entries and more for the max entries (800) in one single directory and during this time the sid player freezes.
 
To avoid hearing the annoying last note played repeatedly for this amount of time, i have forced the player to pause and remove it as soon as the contents of the new directory will be displayed.
 
Obviously if you had chosen to pause the song voluntarily with the appropriate button, it will not resume playing after the new directory is displayed.

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

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.20 – 30/7/2022

Added:

  • Combo buttons to go up of one directory.

The new feature working when you are in FILE BROWSING display mode and by holding down the button MODE and at the same time press the button of the ENCODER you can go up of one directory.

This mode is very useful if you have a list of many files or directory and would like to easily go up of one directory, currently you should scroll at the beginning or at the end of the list and then click on the double dot to go back, really boring.

Updated:

  • Modified the way for the horizontal scroll of the sid filenames list.

I was not very convinced by the system that i have made for scroll the filenames horizontally, so i changed the mode, in my opinion much nicer.

By holding down the MODE key when you are in FILE BROWSING display mode you can move the entire screen with the filenames list left and right using the same encoder that is used to scroll the filenames list up and down.

Moreover the horizontal screen position is maintained also after the switching of the display mode or if you go up of one or more directory.

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

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.19 – 22/5/2022

Added:

  • Added the horizontal scroll of the sid filenames list.
    • The maximum allowed length of the sid file including extension is 48 characters, the small oled can display a maximum of 20 characters, so this feature is useful with very long file names. The function is activated with the MODE key when you are in browsing files mode, once the 48 characters are reached, the scroll resets and repositions the display of the file from the beginning until the next pressing of the MODE key.

Updated:

  • Added a new parameter to the configuration file (config.ini).
    • Choose the default SID Socket on bootup. This configuration is not mandatory.

Below is an excerpt from the “config.ini” file.

# Choose the default SID Socket on bootup (1:Socket #1 – 2:Socket #2) – default: 1
DEFAULT_SID_SOCKET=1

Fixed:

  • Wrong emulation for the NOP opcode. %-)
    • I noticed this problem with a SID made by Hermit of Samar Productions, SIDRIP Alliance, Singular that uses a SID Player written by him. SID Tune: MSK Cover-XF End (https://csdb.dk/release/?id=214247) This SID Player uses several illegal opcodes and i immediately thought of an emulation problem of these illegal opcodes, instead it was the NOP opcode that had problems. I point out that i listen at random 7XX favorite songs at least 1 hour a day and i never noticed any problems. :-D Anyway, Fixed.
  • Max entries per directory.

The Return of the HybridSID Player rev v2.0 (Bloody Version)

The Return of the HybridSID Player JLCPCB rev v2.0

E’ finalmente arrivato lo stampato del nostro SID Playe rev v2.0.

Ora manca solo l’assemblaggio dei componenti e il test.

Gallery:

Note:

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

Basato sul progetto e lo schema hardware di Markus Gritsch pubblicato negli anni 2011-2015 sul forum dangerousprototypes. Grazie Marco

The Return of the HybridSID Player PCB rev v2.0

18 February 2022 Nessun commento

The Return of the HybridSID Player PCB rev v2.0 by Xad/Nightfall & Gianluca Renzi (RetroBit Lab). Basato sul progetto di Markus Gritsch pubblicato negli anni 2011-2015 sul forum dangerousprotypes. Grazie Markus.

Dopo la prima revisione dello stampato ci siamo accorti che c’erano alcuni problemi di progettazione e di conseguenza di un corretto funzionamento.

Qui di seguito una breve descrizione dei fix e miglioramenti che sono stati fatti per la nuova versione dello stampato del SID Player.

PCB rev v2.0 St.Valentine’s day version:

  • OLED non si spegneva con l’interuttore di power on/off.
  • Pinout errato dello switch ALPS e di conseguenza non si poteva alimentare lo stampato tramite alimentatore/power bank USB.
  • Rimosso diodo Zener.
  • Aggiunti due nuovi ponticelli per selezionare (AB – BA) per l’encoder rotativo.
  • Encoder Rotativo 20 passi, il precedente era errato.
  • Rimosso circuito per lo switch dei due LED per segnalare che SID viene utilizzato per la riproduzione del brano.
  • Rimappati i due LED switch SID su due piedini MCU (RB15 – LED SOCKET #1, RB12 – LED SOCKET #2)
  • Rimossa la possibilita’ di utilizzare OLED 0.96″
  • Allineato OLED 1.3″ sulla linea del ZIF Socket.
  • Spostato segnale di reset che veniva utilizzato dall’OLED 0.96 sul connettore free pins.
  • Sistemati i fori per fissaggio OLED 1.3″
  • Rimappati i seguenti pins (RD5 – SID_RW, RD6 – SID2_CS, RB9 – KEY_FFWD, RB10 – KEY_PAUSE) per liberare piedini 5v tolerant.
  • Aggiunte due nuove resistenze di pull-up per tasto PAUSA e FFWD.
  • Riprogettato tutto lo stadio amplificazione per l’uscita cuffia utilizzando TPA6111A2 e NE5532.
  • Ottimizzazione PCB tracks.
  • Facilitato il DEBUG della CPU creando una “cornice” dove ogni PAD corrisponde ad un piedino della MCU.

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

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.18 – 28/1/2022

Fixed:

  • When you are in Manual mode of playing SID the timeout timer wrongly are also increased into a variable but this timer works only for the modes: auto/random/intro.
  • Wrong STATIC variable for the debug via serial. the serial debug don’t works correctly in some part of the code. %-)
  • Wrong variable for the Timeout check if the time is longer then 99 seconds. %-)

Updated:

  • Freed and remapped to another destination the MCU pins of PAUSE and FFWD buttons to use them with the CS for the SID #2 and R/W because we needed 2 MCU pins 5v tolerant and there aren’t many left :/
  • Described some parts of the source code.
  • Added new parameters to the configuration file (config.ini).
    • Playback timeout in seconds of the .SID files for AUTO/RANDOM and INTRO modes.
    • Configure the best baudrate for the debug via Serial.
    • Disable or Enable the visualization of the VU-METER for the 3 sid voices.

Below is an excerpt from the “config.ini” file.

# Serial Debug Baudrate – default: 115200
SERIAL_BAUDRATE=115200
# Set the Timeout in Seconds for the AUTO/RANDOM playing mode – default: 2 minutes
AUTORND_TIMEOUT=120
# Set the Timeout in Seconds for the INTRO playing mode – default: 15 seconds
INTRO_TIMEOUT=15
# Write 0 if you want to disable the visualization of the vu-meter for the 3 x sid voices.
# Default: 1
SID_VUMETER=1

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

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.17 – 31/12/2021

Added:

  • Change visualization status of the LED for Socket #1 and Socket #2 available on the Olimex Development Board and the SID Player PCB.
  • A configuration file (config.ini) for some important settings of the SID Player. The file will be loaded during the boot and must be present in the ROOT of the filesystem of the USB key.If the file is not found, the player will configure itself with the default values. Thanks to Gianluca Renzi (RetroBit Lab) for his lite INI file parser.

Below is an excerpt from the “config.ini” file.

# Select the Sid model for the Tune played by the SID Player on the Socket #1 or Socket #2.
# Specify the socket which you want to play the sid tunes (example for SID_8580_SOCKET write
# the number 2 if you want it to be played with the SID 8580 installed on socket #2)
# This configuration makes the use very dynamic for everyone. – default: socket #1,#1,#2,#2
TUNE_UNKNOWN_SOCKET=1
TUNE_6581_SOCKET=1
TUNE_8580_SOCKET=2
TUNE_BOTH_SOCKET=2
# Use Armsid with Auto Switching (0:Disabled – 1:Socket #1 – 2:Socket #2) – default: 0
# Note: When you use the auto detection and switching of the SID model with the ARMSID this can be
# used only in one of the two sockets, the other socket is completely ignored and can remain empty.
ARMSID_SOCKET=0
# Brightness of the OLED. (0 … 255) – default: 127
OLED_BRIGHTNESS=127
# Brightness of the OLED in IDLE mode. (0 … 255) – default: 10
OLED_BRIGHTNESS_IDLE=10
# Enable the serial DEBUG. (1 Enable | 0 Disabled) – default: 0
SERIAL_DEBUG=0

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

29 November 2021 Nessun commento

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.16 – 29/11/2021

Updated:

  • Illegal/undocumented opcodes to the CPU Emulator:
    • LAE (LAS/LAR) Combinations of STA/TXS and LDA/TSX.
    • ANE (XAA) Combination of an immediate and an implied command.
    • All 6502/6510 instructions have been implemented.
  • Increased the maximum number of files per directory from 512 max to 800 max.
  • Improved delay routine for read/write eeprom via I2c bitbang, it should now be compatible with all levels of the XC32 compiler code optimization.
  • Replaced and splitted the Splash Screen Logo during the boot. Thanks to Federico di dato for the Retrobit LAB logo.

Fixed:

  • The BRK opcode, opcode that will probably will never used in our case.
  • Missing +2 Machine Cycle Times for the opcodes: BPL,BMI,BVC,BVS,BCC,BCS,BNE,BEQ due to some previous performance improvment of the 6502/6510 emulator code, i was probably drunk, indeed, i’m sure. %-)
  • The clock “|CIA|” was displayed mistakenly when you choose to play a file in DMP format but this is wrong because the DMP file format doesn’t support the information of clock used (VBI/CIA) in the file header.
  • The previous and next button did not work if there are only two files (SID or DMP) available to play in the folder.
  • Incorrect Machine Cycle Times for the NOP opcode, four times instead of two. %-)
  • Sometimes the version number displayed during boot would pop outside from the right side of the oled screen.
  • Wrong Machine Cycle Times for the SLO, SRE(LSE), DCP, RLA, ISC(ISB) Illegal/undocumented opcodes with Indexed-indirect addressing of X,Y-Registers.

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

28 September 2021 Nessun commento

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.15 – 26/9/2021

Updated:

  • Slightly improved the CIA timing, now the SID tune “https://hvsc.csdb.dk/MUSICIANS/P/Page_Jason/25_Hurts.sid” and probably some others they sounds fairly well without “clicking/noise/beeping” in some parts of the song. *
  • Slightly improved the VBI timing, now the SID tune “https://hvsc.csdb.dk/MUSICIANS/S/Stinsen/Freeloader.sid” and probably some others they sounds fairly well without “clicking/noise/beeping” in some parts of the song. *
  • When the (Auto/Random/Intro) MODE is used the brightness of the oled is restored on each change of music until the default timeout is reached.

* I’ll never stop saying we are far away from my personal feeling of absolute perfection but sound ok for 90% of peoples, luckily there aren’t many SID sound purists :-D
Many people still think that a SID played with a SID emulator on a Mobile Phone or PC sounds absolutely identical to the one played with the SID in the original hardware version :-|

Fixed:

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)