Archive

Archive for the ‘Hardware’ Category

The Return of the HybridSID Player PCB rev v2.0

February 18th, 2022 No comments

The Return of the HybridSID Player PCB rev v2.0 by Xad/Nightfall & Gianluca Renzi (RetroBit Lab). Based on the Project and Hardware Schematic by Markus Gritsch released in the years 2011-2015 on the forum dangerousprototypes. Thanks Markus.

After the first revision of the PCB we are realized that there were some design problems and consequently of a correct functioning.

Below is a brief description of the fixes and improvements that have been made for the new one version of the SID Player PCB.

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

  • OLED did not turn off when the power switch was off.
  • Wrong pinout of the ALPS switch and consequently the PCB could not be powered via the USB power supply/power bank.
  • Removed Zener diode.
  • Added two new jumpers to select (AB – BA) for the rotary encoder.
  • Rotary Encoder 20 steps, the previous one was wrong.
  • Removed circuit for the switch of the two LEDs to visualize what SID is used for playing the song.
  • Remapped the two SID LED switches on two MCU pins (RB15 – LED SOCKET # 1, RB12 – LED SOCKET # 2)
  • Removed the possibility of using OLED 0.96″
  • Aligned OLED 1.3 “on the line of the ZIF Socket.
  • Moved reset signal that was used by OLED 0.96 on free pins connector.
  • Fixed the holes for the OLED 1.3 “
  • Remapped the following pins (RD5 – SID_RW, RD6 – SID2_CS, RB9 – KEY_FFWD, RB10 – KEY_PAUSE) to free 5v tolerant pins.
  • Added two new pull-up resistors for PAUSE and FFWD key.
  • Redesigned the entire amplifier stage for the headphone output using TPA6111A2 and NE5532.
  • PCB tracks optimization.
  • Facilitated the CPU DEBUG by creating a “frame” where each PAD corresponds to a pin of the MCU.

The return of the Hybrid Sid Player Firmware update v1.18

January 31st, 2022 No comments

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

Based on the Project and Hardware Schematic by Markus Gritsch released in the years 2011-2015 on the forum dangerousprototypes. Thanks 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

The return of the Hybrid Sid Player Firmware update v1.17

January 5th, 2022 No comments

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

Based on the Project and Hardware Schematic by Markus Gritsch released in the years 2011-2015 on the forum dangerousprototypes. Thanks 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

The return of the Hybrid Sid Player Firmware update v1.16

November 29th, 2021 No comments

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

Based on the Project and Hardware Schematic by Markus Gritsch released in the years 2011-2015 on the forum dangerousprototypes. Thanks 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.

mouSTer – universal USB HID class device to db9 adapter

November 20th, 2021 No comments
mouSTer - universal USB HID class device to db9 adapter.

The mouSTer device allows connecting any USB (not ps/2 protocol type only) mouse/joystick/gamepad to as many old computers and consoles as possible.

At the moment the following retro platforms are fully supported:

  • Commodore 64/128/U64 NTSC/PAL
  • MEGA65
  • Atari ST/STe series
  • Atari Falcon
  • Atari 65XE/130XE/800XE
  • Atari 600XL/800XL
  • Atari 5200
  • Atari 2600
  • Amiga 500/600/1200
  • Amiga 1000/2000/3000/4000

…more:

  • It works with every mouse (also wireless mouse with dongle) and with every USB Gamepads.
  • Config via USB flash drive – INI file + default config.
  • Config transfer via USB flash drive.
  • Firmware upgrade via USB flash drive (takes 3 seconds, of which 2 seconds is the time the bootloader needs to recognize the flash drive)
  • USB Flash drives from 32MB to 32GB.
  • Mouse emulation mode defaults – Amiga, Atari ST, joystick/gamepad.
  • Emulating Amiga CD32 joypad. (default setting are for Sony DS4).
  • Sony DS3 (wired) Pad Support.
  • Sony DS4 (wired) Pad Support.
  • Sony DS5 (wired) Pad Support.
  • Xbox360 (wired) Pad Support.

Future support with minor hardware changes for SEGA consoles and possibly XT PC.

Wireless support for gamepads is also work-in-progress but it might take a while.

Also wireless support for dongle pads like Xbox360 and many more. We are also open to suggestions.

Gallery:

source: retrohax.net retrohax.net firmware

The return of the Hybrid Sid Player Firmware update v1.15

September 28th, 2021 No comments

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

Based on the Project and Hardware Schematic by Markus Gritsch released in the years 2011-2015 on the forum dangerousprototypes. Thanks 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:

Arduino ARMSID configurator with ARDUINO UNO by Nobomi

September 23rd, 2021 No comments
Arduino ARMSID configurator with ARDUINO UNO by Nobomi

Nobomi already developer of the famous ARMSID and ARM2SID, an excellent alternative developed with STM32 of the famous Commodore 64 Sound Chip, has made a nice interface via Terminal (putty) to update and modify the ARMSID configurations without using the native program that runs on the Commodore 64.

The project is based on Arduino UNO REV3, therefore very cheap, the sources are available on GITHUB and can be purchased HERE in the KIT version.

Nobomi has also ventured a SIDPLAYER that runs under Windows and via serial sends DATA and ADDRESSES which are captured by the ARDUINO and then send to the ARMSID and consequently plays the music but don’t expect a perfect SIDPLAYER,  it works but not perfectly.

However, i did not self-build it for this reason but to modify the ARMSID configurations without using the Commodore 64, this will come in handy to check for any problems when i implement the real time switch in the SID Player “The Return of the Hybrid SID Player” between 8580 and 6581 with ARMSID or ARM2SID sound chip.

Gallery:

Categories: Hardware, News & Rumors, Today

The return of the Hybrid Sid Player Firmware update v1.14

August 23rd, 2021 No comments

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

Based on the Project and Hardware Schematic by Markus Gritsch released in the years 2011-2015 on the forum dangerousprototypes. Thanks 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.

Mega Blaster 2 (Sega Megadrive Music player) by A.Lawrence

August 9th, 2021 No comments
Mega Blaster 2

The Mega Blaster 2 by Aidan Lawrence is a hardware Sega Genesis/Mega Drive video game music (VGM) player that utilizes the real sound chips.

Play any Genesis track on-demand with brilliant sound quality on the actual YM2612/YM3438 and SN76489 PSG synthesizer chips that were found in the real Genesis consoles.

The Mega Blaster 2 is compatible with both .vgm and .vgz files and can support both the YM2612 and YM3438 simply by changing the DIP switch values.

This unit does not use any emulated sound – these are the real chips playing back logged data from the vgm files.

Features:

  • Your choice of the original YM2612 (OPN2) or YM3438 (OPN2c) sound chip with the ability to swap on-the-fly using the DIP switches on the side of the board. Or, if you already have the sound chips, you can just order the board without any chips for a discount.
  • A custom analog stage based on the Kunoichi Labs design on a four-layer PCB for flawless sound quality and stellar amplification.
  • No additional power supply required, only a single USB connection.
  • Support for file folders to organize your sound tracks.
  • On-device file browser.
  • Native VGM and VGZ support on-device, no decompression required.
  • Brand-new VGM engine written from the ground up allows for accurate playback speeds for even the most computationally intensive sound tracks.
  • Huge 64Mbit SPI RAM IC allows for giant PCM samples, allowing sample-heavy homebrew soundtracks to play with ease.
  • Automatic YM chip authenticator. If your YM2612/YM3438 is damaged or not authentic, the Mega Blaster 2 will detect this at startup and alert you to it.
  • All sound chips included with the Mega Blaster 2 bought from this site are verified to work correctly.
  • DAC Stream support for homebrew soundtracks.
  • 4 play modes: Loop, In-order, Shuffle ALL tracks, and Shuffle just a single directory.
  • Custom looping options.
  • An OLED display that’s grounded directly to the power input for zero analog interference.
  • An adjustment potentiometer for the SN76489’s volume.
  • A custom boost->linear power supply design for optimal audio performance.
  • On-board class-AB headphone amplifier IC (TPA6111A2)
  • Extremely easy firmware updates that require no external tools other than a computer. Just drag-and-drop an update file to the device as if it were a flash drive. That’s it.

Gallery:

Video:

source: aidanlawrence.com github.com

Categories: Hardware, News & Rumors, Today

The return of the Hybrid Sid Player Firmware update v1.13

August 6th, 2021 No comments

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

Based on the Project and Hardware Schematic by Markus Gritsch released in the years 2011-2015 on the forum dangerousprototypes. Thanks 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.

The return of the Hybrid Sid Player Firmware update v1.12

July 24th, 2021 No comments

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

Based on the Project and Hardware Schematic by Markus Gritsch released in the years 2011-2015 on the forum dangerousprototypes. Thanks 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)

The return of the Hybrid Sid Player Firmware update v1.11

July 3rd, 2021 2 comments

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

Based on the Project and Hardware Schematic by Markus Gritsch released in the years 2011-2015 on the forum dangerousprototypes. Thanks 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.

The return of the Hybrid Sid Player Firmware update v1.1

June 13th, 2021 No comments

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

Based on the Project and Hardware Schematic by Markus Gritsch released in the years 2011-2015 on the forum dangerousprototypes. Thanks 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)

The return of the Hybrid Sid Player Firmware update v1.05

May 19th, 2021 No comments

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

Based on the Project and Hardware Schematic by Markus Gritsch released in the years 2011-2015 on the forum dangerousprototypes. Thanks 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:

The return of the Hybrid Sid Player Firmware update v1.04

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

Based on the Project and Hardware Schematic by Markus Gritsch released in the years 2011-2015 on the forum dangerousprototypes. Thanks 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.