VOGONS


Reply 440 of 590, by noop

User metadata
Rank Member
Rank
Member

Any success? it may initially fail to play many tunes properly, but since it is possible to switch tracks with arrow buttons, you can circumvent this. could do a hack by selecting a tune twice to get rid of the problem, but I want to get to the cause.
Currently experimenting with dos version(that also should work well in Win 9X)

Reply 441 of 590, by noop

User metadata
Rank Member
Rank
Member

Releasing another win9X version.
Changes: channels and filter can be enabled/disabled(1..3, f). Will show playing time. Many internal changes.
Problems with incorrect initialization still there, but if you press left & right arrows, it will go away. Sorry for that.

Attachments

  • Filename
    ssid_w32_1_2a4.zip
    File size
    127.12 KiB
    Downloads
    74 downloads
    File license
    Fair use/fair dealing exception

Reply 442 of 590, by Fagear

User metadata
Rank Member
Rank
Member

I've send a feedback to noop about version ssid_w32_1_2a3, but I didn't tried ssid_w32_1_2a4 yet.

In the meanwhile some utter craziness going on...
Not yet announced, not sure if it will be done or not...
But here is "alpha" version of project DiSSI.

Скриншот 2016-07-13 02.46.51.png
Filename
Скриншот 2016-07-13 02.46.51.png
File size
312.2 KiB
Views
1670 views
File license
Fair use/fair dealing exception

That's two SSI-2001-compatible devices on one board, without joystick port.
Features:
- jumper selectable voltage (+9 for 8580, +12 for 6581)
- pre-installed different filter capacitors with jumpers to select them
- enhanced clock selection: 14.31818 or 17.73447 before divider, divider by 14, 16 and 18 (this allows to select wide range of clocks, including C64 PAL, C64 NTSC, SSI-2001 default) or 1.0 MHz clock can be selected (as for HardSID) (Note: clock is the same for both SIDs)
- more ISA addresses available (SIDs can be set to different addressed or to the same one)
- almost all SMD (cheaper, more compact)
- added latch for address line to try prevent digital noise
- power and ground layout will be improved, filtering will be added
😎

New BIG soundcard: FMonster.
Covox Sound Master replica
Innovation SSI-2001 replica & DuoSID.
My audio/video collection.

Reply 443 of 590, by j^aws

User metadata
Rank Oldbie
Rank
Oldbie

^^ Wow, that's a funky looking card. Is this a single-card, pseudo-stereo version? I'd be interested in one of those...

@noop: Good to see progress on the player. My replicas are currently installed in a pure DOS install, without Win9x, so can't test yet. Very much looking forward to the DOS version.

Reply 444 of 590, by matze79

User metadata
Rank l33t
Rank
l33t

Would you add a SID Emulatorhardware too ? and make this selectable ? just 1-2 Euro Cost increase for atmega88 and clocksource.

https://www.retrokits.de - blog, retro projects, hdd clicker, diy soundcards etc
https://www.retroianer.de - german retro computer board

Reply 445 of 590, by noop

User metadata
Rank Member
Rank
Member

I also planned to recommend using an MCU like a bus controller and possibly SID player or emulator. Basically, a programmable device that passes data to SID, implements a timer to assist software SID player, replaces few other chips, controls SID frequency divider ratio in a basic use case and works as an emulator when programmed with different firmware. This could be surface-mount Atmel AVR part, programmable via ISP header. But I'd prefer a Propeller or STM32. But, unlike Atmels, these don't like 5V levels and need extra buffers or at least resistors. And Propeller (which has great SID emulator cog and probably can run several of those) is more expensive(8$).

Reply 446 of 590, by elianda

User metadata
Rank l33t
Rank
l33t

I don't think a AVR or Propeller has enough CPU power to deliver a decent SID Emulation comparable to the reSID-fp engine.

If one targets SID from the HVSC that are made for playback on a C64 then an accurate clock source for the SID is mandatory. Otherwise the instruments will sound too high/low.

Retronn.de - Vintage Hardware Gallery, Drivers, Guides, Videos. Now with file search
Youtube Channel
FTP Server - Driver Archive and more
DVI2PCIe alignment and 2D image quality measurement tool

Reply 447 of 590, by noop

User metadata
Rank Member
Rank
Member

@elianda not a single emulator is perfect, but many such emulators are quite acceptable: https://www.youtube.com/watch?v=w_GTOvkdM5Q
Also, the existing card is already capable of simulating NTSC C64 clock, just not the PAL clock. Because PCs still have NTSC clock source inside.

Reply 448 of 590, by Fagear

User metadata
Rank Member
Rank
Member
j^aws wrote:

Is this a single-card, pseudo-stereo version?

Yes, it is a single card, output is not yet defined. It can be set as stereo (one SID on the left, another on the right), or as mixed mono with 6 voices, or output of one SID can be directed into an input of another. Or, somehow, I can make it switchable.

matze79 wrote:

Would you add a SID Emulatorhardware too ?

I don't think that it would be a good idea. No emulator sounds 100% right, even ReSIDfp. So there will be always questions about "why this and not that one?". Also, if we are going for emulators, why even have real SIDs on the board? Put one FPGA on the PCB, put all logic in it, put numerous emulator cores - and there you have it.
I think SwinSID nano in place of real SID will do the job if someone wants it.

noop wrote:

I also planned to recommend using an MCU like a bus controller and possibly SID player or emulator. Basically, a programmable device that passes data to SID, implements a timer to assist software SID player, replaces few other chips, controls SID frequency divider ratio

I don't think that MCU will have enough grunt for this task. It is pretty slow device with sequential software code. I don't think that it can manage 8 data lines, 5 address lines and 4 control lines with required timings and speed. It has to be parallel device, such as CPLD or FPGA. More complex, not that cheap as common 74-series logic.
Also MCU can not make needed clocks... It has to be separate oscillator(s).

Last edited by Fagear on 2016-07-13, 20:43. Edited 1 time in total.

New BIG soundcard: FMonster.
Covox Sound Master replica
Innovation SSI-2001 replica & DuoSID.
My audio/video collection.

Reply 449 of 590, by noop

User metadata
Rank Member
Rank
Member
Fagear wrote:
noop wrote:

I also planned to recommend using an MCU like a bus controller and possibly SID player or emulator. Basically, a programmable device that passes data to SID, implements a timer to assist software SID player, replaces few other chips, controls SID frequency divider ratio

I don't think that MCU will have enough grunt for this task. It is pretty slow device with sequential software code. I don't think that it can manage 8 data lines, 5 address lines and 4 control lines with required timings and speed. It has to be parallel device, such as CPLD or FPGA. More complex, not that cheap as common 74-series logic.
Also MCU can not make needed clocks... It has to be separate oscillator(s).

1) Propeller is not a "slow sequential device". It has 8 cores running completely in parallel, so it can solve some of the tasks typically solved with FPGA. Also, even the 8-bit AVR is not completely sequential, as its has timers that can divide external frequency.
2) I did not actually suggest to replace all the ICs. Only the data buffer and (maybe) address decoder. Not the divider counter itself, but it could control the divider ratio. ISA access frequency is < 1 MHz, AVR can run at speed higher than 20 MHz. _Maybe_ its own timers could be used for frequency division(this costs no CPU time).
3) Why not FPGA? Because of cost and availability of SID emulators for both MCUs.
Anyway, that was just a suggestion. It would be cool to have something programmable between SID and ISA bus, potentially capable of replacing SID altogether.

edit: Attached the next version (Win9X):
The main change is that it will mute SID properly after playback (need confirmation, as I only have 6581 with dead filters)
Basically, after playback, SID _should_ generate less noise, compared to the previous version.

Attachments

  • Filename
    ssid_w32_1_2a5.zip
    File size
    128.33 KiB
    Downloads
    65 downloads
    File license
    Fair use/fair dealing exception
Last edited by noop on 2016-07-14, 17:59. Edited 3 times in total.

Reply 450 of 590, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++

The Propeller was actually intended for handling external hardware events efficiently without interrupts.

All hail the Great Capacitor Brand Finder

Reply 451 of 590, by noop

User metadata
Rank Member
Rank
Member

Another update.
Finally got rid of a stupid bug (and many small ones). Added pause command (space).
By Fagear's request bundled the required ROMs.
Windows version is now fully usable.

Next: Optimizations and (finally) the DOS build. Stay tuned.

Attachments

  • Filename
    ssid_w9x_1_2b1.zip
    File size
    142.89 KiB
    Downloads
    107 downloads
    File license
    Fair use/fair dealing exception

Reply 452 of 590, by BloodyCactus

User metadata
Rank Oldbie
Rank
Oldbie
elianda wrote:

I don't think a AVR or Propeller has enough CPU power to deliver a decent SID Emulation comparable to the reSID-fp engine.

well there is a SID engine for propeller

SIDcog version 1.3 features: […]
Show full quote

SIDcog version 1.3 features:

  • Runs in one cog - totally self contained
  • 31kHz sample rate
  • >16bit internal resolution
  • >12bit external resolution (duty DAC)
  • Full filter support - any combination of Lowpass, Bandpass and Highpass filter
  • Full envelope support with a logarithmic release/decay curve (uses the same logarithmic approximation as a real SID)
  • Supports all basic waveform types (Square, Saw, Triangle, Noise)
  • Combined waveform support
  • 16 steps main volume
  • Waveform reset bit works (many Rob Hubbard tunes relies on this exact behaviour)
  • Ring modulation
  • Oscillator synchronization
  • Can be programmed in the exact same way as a real SID (Have a look at the official SID documentation for a better understanding)

--/\-[ Stu : Bloody Cactus :: [ https://bloodycactus.com :: http://kråketær.com ]-/\--

Reply 453 of 590, by noop

User metadata
Rank Member
Rank
Member

I had an idea for 3 somewhat related features to be added to the player.
1) SID clock frequency autodetection. Then add an option to scale the speed of the tune to this frequency instead of the frequency from SID header.
2) Software scaling of voice frequencies to simulate PAL clock while running on SSI-2001 or NTSC clock that this card supports. Would work with most tunes.
3) Software adjustment of the filter cutoff frequency. Better emulation of C64 filter with SSI-2001 filter capacitors.

What do you people think?

Reply 454 of 590, by noop

User metadata
Rank Member
Rank
Member

Here's how I tried to solve the capacitor problem 😀

P7250090.jpg
Filename
P7250090.jpg
File size
566.39 KiB
Views
1395 views
File license
Fair use/fair dealing exception

Reply 455 of 590, by Fagear

User metadata
Rank Member
Rank
Member
noop wrote:
I had an idea for 3 somewhat related features to be added to the player. 1) SID clock frequency autodetection... 2) Software sca […]
Show full quote

I had an idea for 3 somewhat related features to be added to the player.
1) SID clock frequency autodetection...
2) Software scaling of voice frequencies...
3) Software adjustment of the filter cutoff frequency...

What do you people think?

I've answered those question in PM, but I'll repeat here. That would be usefull, but wouldn't that take much time to implement?
Also, as I've read in the datasheet, it is possible to read back the VOICE3 oscillator state, oscillator frequency is function of register value and SID clock. So it is, theoretically, possible to run VOICE3 on some frequency, read back speed of ramp and calculate SID clock.
Also it can be used to detect SSI-2001 presence.

About bugs.
Most of them are eliminated, but I've found two:
1) On first start and on change of active channels/filter on SOME files volume jumps for a couple of seconds.
2) UI bug: if you toggle channels and press space bar - time is not displayed until unpaused.

Also "filter: off" function helps SIDs with dead filters to play.
I've recorded some files with this software on two SSI-2001.

And here is progress with double SID board:

6.png
Filename
6.png
File size
435.81 KiB
Views
1318 views
File license
Fair use/fair dealing exception

Almost ready!

Thinking about name for this card...

New BIG soundcard: FMonster.
Covox Sound Master replica
Innovation SSI-2001 replica & DuoSID.
My audio/video collection.

Reply 456 of 590, by hard1k

User metadata
Rank Oldbie
Rank
Oldbie

SLI-2001?

Fortex, the A3D & XG/OPL3 accelerator (Vortex 2 + YMF744 combo sound card)
AWE64 Legacy
Please have a look at my wishlist (hosted on Amibay)

Reply 457 of 590, by matze79

User metadata
Rank l33t
Rank
l33t

i would like to get this one too if its ready 😀

Thanks for the Two Kits of the SSI-2001, i'm going to build it this weekend!

https://www.retrokits.de - blog, retro projects, hdd clicker, diy soundcards etc
https://www.retroianer.de - german retro computer board

Reply 458 of 590, by Fagear

User metadata
Rank Member
Rank
Member

Video with comparison between two good SIDs (8580R5 and 6581R2) and one 6581R4 with dead filters: https://youtu.be/-T2eUPKXUtA?t=7m4s

New BIG soundcard: FMonster.
Covox Sound Master replica
Innovation SSI-2001 replica & DuoSID.
My audio/video collection.

Reply 459 of 590, by j^aws

User metadata
Rank Oldbie
Rank
Oldbie

^^ Cool video. Personally, I've tried a 6581 (has no R number) and an 8580R5 alongside each other to get pseudo-stereo effect using both boards simultaneously, and I can hear the subtle differences.

Fagear wrote:
And here is progress with double SID board: […]
Show full quote

And here is progress with double SID board:

6.png

Almost ready!

Thinking about name for this card...

How about 'SIDUOS' - combining 'duo' with the SID...?

BTW, would that board be available in blue? Looks really good.