News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu

New release of Sid player

Started by TomEtJerry, 08:46, 31 December 11

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

TomEtJerry

Hi everyone,

New release of the SID player ! Some interface changes (easier to use), a little bug correction in the SID emulation and... sources !
A nice gift for your cpc to end the year !

Let's thanks again Geco for this nice job  :) .

Sorry to have started another topic, I don't know why but I can't create a new message in the previous one...

T&J/GPA

Gryzor

I unlocked the other thread (there seems to be a bug on the forum...), thanks for the update!


MiguelSky

I had a look the sources, but I can't get the thing working. I would add player with a .sid file to a loading screen for a game. The player alone works like a charm :D with my file... Any ideas? Thanks in advance ;)

TFM

If you assemble the source, then compare the output to the working player. May you find differences. Good luck!
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

MiguelSky

Yes, I'll have a look there... Thanks TFM :) !!

RockRiver

#6
Hi! Partners!!
Geco do it again!!!!!
https://enterpriseforever.com/enterprise-devcompo-2-42/sidbasic/

M64 (SID converted) files for AY/YM soundchips and PLAYER. Now not only square waves....

ZX Spectrum work too...
https://www.worldofspectrum.org/forums/discussion/54160/c64-sid-player-coming-soon-to-specy-128/p1

Anybody here is friend of Geco to ask him about a CPC version of M64 files PLAYER ?

RockRiver

#7
Geco about CPC port at Enterprise Forever Forum:
Speccy has quite fast AY access, CPC has a bit complicated, if you can help with a faster AY volume register access than what I know (the official way) - 3 volume registers should be written -  then I would try to make it to CPC, or probably I can check in new programs, for example in Star Sabre. 》

BSC

Quote from: RockRiver on 11:02, 02 July 18
Hi! Partners!!
Geco do it again!!!!!
https://enterpriseforever.com/enterprise-devcompo-2-42/sidbasic/


That's a fantastic achievement! Sounds really awesome :)

I have done something vaguely similar a few years ago, AY access is really slow on the CPC, that's why I
resorted to a single-channel solution (Thargan has done 2 channels, but with imo stark reduced audio quality)

See this thread for details:

http://www.cpcwiki.eu/forum/applications/sid-tracker-player-on-cpc-(non-plus)/

I'd love to see this project coming back to life :)
** My SID player/tracker AYAY Kaeppttn! on github **  Some CPC music and experiments ** Other music ** More music on scenestream (former nectarine) ** Some shaders ** Some Soundtrakker tunes ** Some tunes in Javascript

My hardware: ** Schneider CPC 464 with colour screen, 64k extension, 3" and 5,25 drives and more ** Amstrad CPC 6128 with M4 board, GreaseWeazle.

Targhan

#9
QuoteThargan has done 2 channels, but with imo stark reduced audio quality)

Targhan has done 3 channels :)  (Imperial Mahjong).
Targhan/Arkos

Arkos Tracker 2.0.1 now released! - Follow the news on Twitter!
Disark - A cross-platform Z80 disassembler/source converter
FDC Tool 1.1 - Read Amsdos files without the system

Imperial Mahjong
Orion Prime

BSC

Quote from: Targhan on 08:55, 10 July 18
Targhan has done 3 channels :) .


Targhan good programmer  :laugh:
** My SID player/tracker AYAY Kaeppttn! on github **  Some CPC music and experiments ** Other music ** More music on scenestream (former nectarine) ** Some shaders ** Some Soundtrakker tunes ** Some tunes in Javascript

My hardware: ** Schneider CPC 464 with colour screen, 64k extension, 3" and 5,25 drives and more ** Amstrad CPC 6128 with M4 board, GreaseWeazle.

Geco

Quote from: RockRiver on 11:02, 02 July 18
Hi! Partners!!
Geco do it again!!!!!
https://enterpriseforever.com/enterprise-devcompo-2-42/sidbasic/

M64 (SID converted) files for AY/YM soundchips and PLAYER. Now not only square waves....

ZX Spectrum work too...
https://www.worldofspectrum.org/forums/discussion/54160/c64-sid-player-coming-soon-to-specy-128/p1

Anybody here is friend of Geco to ask him about a CPC version of M64 files PLAYER ?
Main worth for IstvánV, mine is the smaller parts in SIDBASIC palyers on Speccy and Enterprise :)
I will check the possibilities on CPC, I will check Imperial mahjong too.

Geco

Here are 2 versions, the SIDB plays back with 6451Hz, it is louder, SIDB3 plays back with 9523 Hz it is noisy, but high frequency sounds are much better.
Esc: loading new song (it can happen the key should be pressed longer, because it is checked only in every second)

Geco

#13
SIDB became a bit faster it plays back with 6711Hz.I forgot to mention that I could use 4 pages to unpack the data, each page contains 27,28 sec sound, so after 109 sec the song is started again.

>>DiskSID1.zip has been removed

Geco

Is it possible RAM expansion does not follow system RAM continuously ? For example there is a CPC128 with a 128KB RAM expansion, normal RAM's are 00-07 and the RAM expansion are 0c-13 ? The 1st expansion RAM segment can be paged in with LD BC,7FD4h instead of LD BC,7FCCh?

Duke

Quote from: Geco on 08:48, 22 July 18
Is it possible RAM expansion does not follow system RAM continuously ? For example there is a CPC128 with a 128KB RAM expansion, normal RAM's are 00-07 and the RAM expansion are 0c-13 ? The 1st expansion RAM segment can be paged in with LD BC,7FD4h instead of LD BC,7FCCh?
It's nice explained here under MMR:
http://web.archive.org/web/20170612081209/http://www.grimware.org/doku.php/documentations/devices/gatearray

Geco

#16
Quote from: Duke on 09:42, 22 July 18
It's nice explained here under MMR:
http://web.archive.org/web/20170612081209/http://www.grimware.org/doku.php/documentations/devices/gatearray
Thx, I did not find exactly what I was looking for, or if only one memory expansion can be used for the normal RAM selection (&7FCx), for example 1 256 KB can be attached, and it removes automatically the default 64KB extended RAM of  a CPC128, but 4 different 64 KB RAM extension can not be attached?I ask it, because I made support for expanded memory CPC (only for port 7fh), and now the code assumes that the RAM is continuous in the factory default RAM expansion area, on Enterprise the additional memory can be anywhere there could be holes between memory expansions, this is the reason why a lot of non EXOS compatible enterprise program does not run on an expanded EP64.I could increase a bit on the playback speed for SIDB, now it is 6801 Hz :)

Duke

Quote from: Geco on 10:09, 22 July 18
Thx, I did not find exactly what I was looking for, or if only one memory expansion can be used for the normal RAM selection (&7FCx), for example 1 256 KB can be attached, and it removes automatically the default 64KB extended RAM of  a CPC128, but 4 different 64 KB RAM extension can not be attached?I ask it, because I made support for expanded memory CPC (only for port 7fh), and now the code assumes that the RAM is continuous in the factory default RAM expansion area, on Enterprise the additional memory can be anywhere there could be holes between memory expansions, this is the reason why a lot of non EXOS compatible enterprise program does not run on an expanded EP64.I could increase a bit on the playback speed for SIDB, now it is 6801 Hz :)
Normal memory expansions would have pages sequential for the first 512KB through 7F00 via MMR register (ie. X-MEM)
Connecting multiple smaller memory expansions (ie. DK tronics 64KB) would not be usable, without modification as far as I know.

Geco

Quote from: Duke on 12:11, 22 July 18
Normal memory expansions would have pages sequential for the first 512KB through 7F00 via MMR register (ie. X-MEM)
Connecting multiple smaller memory expansions (ie. DK tronics 64KB) would not be usable, without modification as far as I know.
Great :) Thank you very much :) I do not have to modify on my existing code :)I think the player is near to it's final phase, I will keep the 2 versions, SIDB plays on 6801Hz on 3 AY registers ( i like it more ) and SIDB3 which plays on 9523Hz but only on one AY channels ( I do not like here the generated noise )7 minutes can be played back on a CPC with 256KB expansion.Next steps I will try to involve 5 memory segments on a CPC6128 instead of 4.Adding some text during unpacking, and reordering the unpacked value, because on an expanded machine these activities can take 10-30 seconds.I do not plan to add a graphics during playback, it would use quite lot space.

ASiC

Quote from: Geco on 14:03, 22 July 18
Great :) Thank you very much :) I do not have to modify on my existing code :)I think the player is near to it's final phase, I will keep the 2 versions, SIDB plays on 6801Hz on 3 AY registers ( i like it more ) and SIDB3 which plays on 9523Hz but only on one AY channels ( I do not like here the generated noise )7 minutes can be played back on a CPC with 256KB expansion.Next steps I will try to involve 5 memory segments on a CPC6128 instead of 4.Adding some text during unpacking, and reordering the unpacked value, because on an expanded machine these activities can take 10-30 seconds.I do not plan to add a graphics during playback, it would use quite lot space.
Hi Geco,
For the SIDB3 player, could you use the center (mono) channel of the AY please?
Cheers

Geco

Quote from: ASiC on 16:33, 22 July 18
Hi Geco,
For the SIDB3 player, could you use the center (mono) channel of the AY please?
Cheers
Hello Asic
Sure, I changed now from AY register 08 to 09.

Geco

If you do not find any error then this is the final version. 5x16KB (5x27,2 sec) available for playback on a CPC128, on a CPC with 256KB expansion 17x16KB. Unfortunately I could not add unpack and reorder text, because only page2 (8000h-c000h) is not used during this activity, and the program needs CPC system variables, and jump table for loading. I can add a screen during playback if you do not like the black screen :)

Geco

I created 2 new versions, the difference is that, SIDB and SIDB3 add the value of each "SID" channel, and reads the value to be written from a 3x256 byte table and write AY volume values at the end of each phase, SIDB8 and SIDB9 write each "SID" channel volume value when it got.SIDB8 and SIDB9 has much less noise, the old solution would be better, because by the volume table the volume values are linear, but because the AY write is slow it sounds worse.The difference between SIDB8 and SIDB9 is that I made changes on samples on SIDB9, because AY volume is not linear, in SIDB8 tha samples remained linear, I think in most cases SIDB9 is better.
ps.Last Ninja file names are mixed.

freemac

Quote from: Geco on 19:00, 22 July 18
I can add a screen during playback if you do not like the black screen :)
Just the name of song in progress, something like that could be nice  8)

Geco

Quote from: freemac on 21:21, 04 August 18
Just the name of song in progress, something like that could be nice  8)
I wanted to add it, and sign about the progress, but during unpack, and data preprocess I can not, because 1st page contains the code, and 1st part of packed data, 2nd page contains the 2nd part of packed data, 3rd page is untouched, but I need CPC system variables, and 4th page is fully used for unpacking.I wanted to use 3rd page from 8000h-9fffh for print, but i forgot that CPC video addressing is not linear, so the 1st character row would overwrite CPC system data :(
The name of the song or/and a picture can be displayed after data preprocessing.

Powered by SMFPacks Menu Editor Mod