Csound Csound-dev Csound-tekno Search About

[Csnd] old retro csound for dos 6.22

Date2021-10-27 08:08
FromJosh Moore
Subject[Csnd] old retro csound for dos 6.22
does anyone have this? i'm building an old fasttracker 2 box and it would be neat to have to make/modify samples in
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2021-10-27 15:59
FromRichard Knight
SubjectRe: [Csnd] old retro csound for dos 6.22

Here's the last version of Csound I could find compiled with DOS support: 4.11 , so about 20 years old...

http://csound.1bpm.net/builds/csound-dos-4.11.zip

 

After that the only binaries I can find are for Win32.


On 2021-10-27 08:08, Josh Moore wrote:

does anyone have this? i'm building an old fasttracker 2 box and it would be neat to have to make/modify samples in
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2021-10-27 21:03
Fromjohn
SubjectRe: [Csnd] old retro csound for dos 6.22
I hae soucetrees from 1988 and 1995 but I canoyt find precompiled 
binaries.  I may stil ae them on the desk machine.  I tnk Victor had 
some early system(s) as well.
==John ff

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2021-10-27 21:27
FromVictor Lazzarini
SubjectRe: [Csnd] [EXTERNAL] Re: [Csnd] old retro csound for dos 6.22
I have source code but not DOS binaries.
Are there any archives of DREAM packages?

Prof. Victor Lazzarini
Maynooth University
Ireland

> On 27 Oct 2021, at 21:03, john  wrote:
> 
> *Warning*
> 
> This email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> 
> I hae soucetrees from 1988 and 1995 but I canoyt find precompiled
> binaries.  I may stil ae them on the desk machine.  I tnk Victor had
> some early system(s) as well.
> ==John ff
> 
> Csound mailing list
> Csound@listserv.heanet.ie
> https://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Flistserv.heanet.ie%2Fcgi-bin%2Fwa%3FA0%3DCSOUND&data=04%7C01%7CVictor.Lazzarini%40mu.ie%7Ce4963307bc24482d9cd808d99984e536%7C1454f5ccbb354685bbd98621fd8055c9%7C1%7C1%7C637709618336721501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=rBlr01Qz%2BBpWtv27pZwZN4%2FkFLs7ZUIRvVNfdjaryOU%3D&reserved=0
> Send bugs reports to
>       https://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fcsound%2Fcsound%2Fissues&data=04%7C01%7CVictor.Lazzarini%40mu.ie%7Ce4963307bc24482d9cd808d99984e536%7C1454f5ccbb354685bbd98621fd8055c9%7C1%7C1%7C637709618336721501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=MezYuZXmRGMkU%2FNQTcM6zvdxmHvu1T81t8BnFBn2lFQ%3D&reserved=0
> Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2021-10-27 21:52
Fromjohn
SubjectRe: [Csnd] [EXTERNAL] Re: [Csnd] old retro csound for dos 6.22
Of course -- I couldnot remembre the name Dream.  For xample

Archive:  csound_286.zip
   Length      Date    Time    Name
---------  ---------- -----   ----
    442382  1995-05-13 10:10   CSOUND.EXE
     89104  1995-01-17 22:36   HETRO.EXE
    149006  1995-01-17 22:36   LPCANAL.EXE
    159758  1995-01-17 22:37   PVANAL.EXE
     16896  1995-05-13 10:10   CSCORE.LIB
     46096  1995-05-13 10:10   SCOT.EXE
     39440  1995-05-13 10:10   SCSORT.EXE
     46096  1995-05-13 10:10   EXTRACT.EXE
     82960  1995-05-13 10:11   SCALE.EXE
     68112  1995-05-13 10:11   SNDINFO.EXE
     85008  1995-05-13 10:11   MIXER.EXE
     95758  1995-05-13 10:11   MKGRAPH.EXE
      1704  1995-04-13 10:42   USAGE.TXT
     93142  1991-05-10 09:04   ZPM.EXE
---------                     -------
   1415462                     14 files


I also have

-rw-r----- 1 jpff users  831126 Jul 14  1995  csound_286_fpt.zip
-rw-r----- 1 jpff users  822131 Jul 14  1995  csound_286.zip
-rw-r----- 1 jpff users  747551 Jun  8  1995  cs386.zip
-rw-r----- 1 jpff users  728468 Jun  5  1995  csound_486.zip
-rw-r----- 1 jpff users  743363 Jun  5  1995  csound_386.zip
-rw-r----- 1 jpff users  728998 Jun  5  1995  csound_386_fpt.zip


On Wed, 27 Oct 2021, Victor Lazzarini wrote:

> I have source code but not DOS binaries.
> Are there any archives of DREAM packages?
>
> Prof. Victor Lazzarini
> Maynooth University
> Ireland
>
>> On 27 Oct 2021, at 21:03, john  wrote:
>>
>> *Warning*
>>
>> This email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
>>
>> I hae soucetrees from 1988 and 1995 but I canoyt find precompiled
>> binaries.  I may stil ae them on the desk machine.  I tnk Victor had
>> some early system(s) as well.
>> ==John ff
>>
>> Csound mailing list
>> Csound@listserv.heanet.ie
>> https://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Flistserv.heanet.ie%2Fcgi-bin%2Fwa%3FA0%3DCSOUND&data=04%7C01%7CVictor.Lazzarini%40mu.ie%7Ce4963307bc24482d9cd808d99984e536%7C1454f5ccbb354685bbd98621fd8055c9%7C1%7C1%7C637709618336721501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=rBlr01Qz%2BBpWtv27pZwZN4%2FkFLs7ZUIRvVNfdjaryOU%3D&reserved=0
>> Send bugs reports to
>>       https://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fcsound%2Fcsound%2Fissues&data=04%7C01%7CVictor.Lazzarini%40mu.ie%7Ce4963307bc24482d9cd808d99984e536%7C1454f5ccbb354685bbd98621fd8055c9%7C1%7C1%7C637709618336721501%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=MezYuZXmRGMkU%2FNQTcM6zvdxmHvu1T81t8BnFBn2lFQ%3D&reserved=0
>> Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>        https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
>

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2021-10-27 23:25
FromJosh Moore
SubjectRe: [Csnd] old retro csound for dos 6.22
Thanks I will try this  after work. I don't know if any of you are into retro computing but DOScember is coming up so I wanted to write a song using DOS software I could use new csound but that would be cheating and I only really need oscil and ftables anyhow

On Wed, Oct 27, 2021, 7:59 AM Richard Knight <richard@1bpm.net> wrote:

Here's the last version of Csound I could find compiled with DOS support: 4.11 , so about 20 years old...

http://csound.1bpm.net/builds/csound-dos-4.11.zip

 

After that the only binaries I can find are for Win32.


On 2021-10-27 08:08, Josh Moore wrote:

does anyone have this? i'm building an old fasttracker 2 box and it would be neat to have to make/modify samples in
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2021-10-27 23:39
Fromrasmus ekman
SubjectRe: [Csnd] old retro csound for dos 6.22
Here's one that reports as 6.08 (doubles), from 2016:
https://abc.se/~re/Stuff/Csound-DOS-608.zip

I don't think I had fiddled with the code... - ah, just added the vosim opcode


E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
0dBFS level = 32768.0
--Csound version 6.08 (double samples) Dec 29 2016
[commit: GIT_HASH_VALUE]
libsndfile-1.0.25
Usage:  csound [-flags] orchfile scorefile
Legal flags are:
...


Regards,

	/re

Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> does anyone have this? i'm building an old fasttracker 2 box and it would be neat to have to make/modify samples in
> Csound mailing list Csound@listserv.heanet.ie  https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2021-10-27 23:53
Fromrasmus ekman
SubjectRe: [Csnd] old retro csound for dos 6.22
I have one called 6.15 (doubles, 2020-08) too, but that's a 12 kB exe with 56 dll's (14 MB),
not sure if it works in DOS proper or if it actually needs windows subsystem.

Holler if anyone wants to try, takes but a minute to upload.

Cheers,
	re

Den 2021-10-28 kl. 00:39, skrev rasmus ekman:
> Here's one that reports as 6.08 (doubles), from 2016:
> https://abc.se/~re/Stuff/Csound-DOS-608.zip
> 
> I don't think I had fiddled with the code... - ah, just added the vosim opcode
> 
> 
> E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> 0dBFS level = 32768.0
> --Csound version 6.08 (double samples) Dec 29 2016
> [commit: GIT_HASH_VALUE]
> libsndfile-1.0.25
> Usage:  csound [-flags] orchfile scorefile
> Legal flags are:
> ...
> 
> 
> Regards,
> 
>      /re
> 
> Den 2021-10-27 kl. 09:08, skrev Josh Moore:
>> does anyone have this? i'm building an old fasttracker 2 box and it would be neat to have to make/modify samples in
>> Csound mailing list Csound@listserv.heanet.ie  https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> 
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2021-10-28 02:40
FromRichard Knight
SubjectRe: [Csnd] old retro csound for dos 6.22
Unfortunately I don't think this works in DOS proper, I tried it in 
dosemu (which did run the older v4 binary OK) and it reports
This program cannot be run in DOS mode.

On 2021-10-27 23:39, rasmus ekman wrote:
> Here's one that reports as 6.08 (doubles), from 2016:
> https://abc.se/~re/Stuff/Csound-DOS-608.zip
> 
> I don't think I had fiddled with the code... - ah, just added the vosim 
> opcode
> 
> 
> E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> 0dBFS level = 32768.0
> --Csound version 6.08 (double samples) Dec 29 2016
> [commit: GIT_HASH_VALUE]
> libsndfile-1.0.25
> Usage:  csound [-flags] orchfile scorefile
> Legal flags are:
> ...
> 
> 
> Regards,
> 
> 	/re
> 
> Den 2021-10-27 kl. 09:08, skrev Josh Moore:
>> does anyone have this? i'm building an old fasttracker 2 box and it 
>> would be neat to have to make/modify samples in
>> Csound mailing list Csound@listserv.heanet.ie 
>>  
>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to 
>> https://github.com/csound/csound/issues Discussions of bugs and 
>> features can be posted here
> 
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>        https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2021-10-28 04:54
FromJosh Moore
SubjectRe: [Csnd] old retro csound for dos 6.22
yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't. 

found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P

On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
Unfortunately I don't think this works in DOS proper, I tried it in
dosemu (which did run the older v4 binary OK) and it reports
This program cannot be run in DOS mode.

On 2021-10-27 23:39, rasmus ekman wrote:
> Here's one that reports as 6.08 (doubles), from 2016:
> https://abc.se/~re/Stuff/Csound-DOS-608.zip
>
> I don't think I had fiddled with the code... - ah, just added the vosim
> opcode
>
>
> E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> 0dBFS level = 32768.0
> --Csound version 6.08 (double samples) Dec 29 2016
> [commit: GIT_HASH_VALUE]
> libsndfile-1.0.25
> Usage:  csound [-flags] orchfile scorefile
> Legal flags are:
> ...
>
>
> Regards,
>
>       /re
>
> Den 2021-10-27 kl. 09:08, skrev Josh Moore:
>> does anyone have this? i'm building an old fasttracker 2 box and it
>> would be neat to have to make/modify samples in
>> Csound mailing list Csound@listserv.heanet.ie
>> <mailto:Csound@listserv.heanet.ie>
>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
>> https://github.com/csound/csound/issues Discussions of bugs and
>> features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>        https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2021-11-02 04:12
FromIain Duncan
SubjectRe: [Csnd] old retro csound for dos 6.22
Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.

iain

On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't. 

found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P

On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
Unfortunately I don't think this works in DOS proper, I tried it in
dosemu (which did run the older v4 binary OK) and it reports
This program cannot be run in DOS mode.

On 2021-10-27 23:39, rasmus ekman wrote:
> Here's one that reports as 6.08 (doubles), from 2016:
> https://abc.se/~re/Stuff/Csound-DOS-608.zip
>
> I don't think I had fiddled with the code... - ah, just added the vosim
> opcode
>
>
> E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> 0dBFS level = 32768.0
> --Csound version 6.08 (double samples) Dec 29 2016
> [commit: GIT_HASH_VALUE]
> libsndfile-1.0.25
> Usage:  csound [-flags] orchfile scorefile
> Legal flags are:
> ...
>
>
> Regards,
>
>       /re
>
> Den 2021-10-27 kl. 09:08, skrev Josh Moore:
>> does anyone have this? i'm building an old fasttracker 2 box and it
>> would be neat to have to make/modify samples in
>> Csound mailing list Csound@listserv.heanet.ie
>> <mailto:Csound@listserv.heanet.ie>
>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
>> https://github.com/csound/csound/issues Discussions of bugs and
>> features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>        https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2021-11-06 20:07
FromAaron Krister Johnson
SubjectRe: [Csnd] old retro csound for dos 6.22
This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?

I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.

Aaron Krister Johnson
http://www.untwelve.org


On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.

iain

On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't. 

found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P

On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
Unfortunately I don't think this works in DOS proper, I tried it in
dosemu (which did run the older v4 binary OK) and it reports
This program cannot be run in DOS mode.

On 2021-10-27 23:39, rasmus ekman wrote:
> Here's one that reports as 6.08 (doubles), from 2016:
> https://abc.se/~re/Stuff/Csound-DOS-608.zip
>
> I don't think I had fiddled with the code... - ah, just added the vosim
> opcode
>
>
> E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> 0dBFS level = 32768.0
> --Csound version 6.08 (double samples) Dec 29 2016
> [commit: GIT_HASH_VALUE]
> libsndfile-1.0.25
> Usage:  csound [-flags] orchfile scorefile
> Legal flags are:
> ...
>
>
> Regards,
>
>       /re
>
> Den 2021-10-27 kl. 09:08, skrev Josh Moore:
>> does anyone have this? i'm building an old fasttracker 2 box and it
>> would be neat to have to make/modify samples in
>> Csound mailing list Csound@listserv.heanet.ie
>> <mailto:Csound@listserv.heanet.ie>
>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
>> https://github.com/csound/csound/issues Discussions of bugs and
>> features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>        https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2021-11-07 03:09
FromJosh Moore
SubjectRe: [Csnd] old retro csound for dos 6.22
You should be able to edit the cmake file(s) for this. It's already sort of set up like that

On Sat, Nov 6, 2021, 1:08 PM Aaron Krister Johnson <akjmicro@gmail.com> wrote:
This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?

I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.

Aaron Krister Johnson
http://www.untwelve.org


On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.

iain

On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't. 

found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P

On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
Unfortunately I don't think this works in DOS proper, I tried it in
dosemu (which did run the older v4 binary OK) and it reports
This program cannot be run in DOS mode.

On 2021-10-27 23:39, rasmus ekman wrote:
> Here's one that reports as 6.08 (doubles), from 2016:
> https://abc.se/~re/Stuff/Csound-DOS-608.zip
>
> I don't think I had fiddled with the code... - ah, just added the vosim
> opcode
>
>
> E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> 0dBFS level = 32768.0
> --Csound version 6.08 (double samples) Dec 29 2016
> [commit: GIT_HASH_VALUE]
> libsndfile-1.0.25
> Usage:  csound [-flags] orchfile scorefile
> Legal flags are:
> ...
>
>
> Regards,
>
>       /re
>
> Den 2021-10-27 kl. 09:08, skrev Josh Moore:
>> does anyone have this? i'm building an old fasttracker 2 box and it
>> would be neat to have to make/modify samples in
>> Csound mailing list Csound@listserv.heanet.ie
>> <mailto:Csound@listserv.heanet.ie>
>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
>> https://github.com/csound/csound/issues Discussions of bugs and
>> features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>        https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2021-11-07 18:19
FromVictor Lazzarini
SubjectRe: [Csnd] [EXTERNAL] [Csnd] old retro csound for dos 6.22
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version 
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway. 
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 6 Nov 2021, at 20:07, Aaron Krister Johnson  wrote:
> 
> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?
> 
> I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.
> 
> Aaron Krister Johnson
> http://www.untwelve.org
> 
> 
> On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan  wrote:
> Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.
> 
> iain
> 
> On Wed, Oct 27, 2021 at 8:55 PM Josh Moore  wrote:
> yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't. 
> 
> found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P
> 
> On Wed, Oct 27, 2021, 6:40 PM Richard Knight  wrote:
> Unfortunately I don't think this works in DOS proper, I tried it in 
> dosemu (which did run the older v4 binary OK) and it reports
> This program cannot be run in DOS mode.
> 
> On 2021-10-27 23:39, rasmus ekman wrote:
> > Here's one that reports as 6.08 (doubles), from 2016:
> > https://abc.se/~re/Stuff/Csound-DOS-608.zip
> > 
> > I don't think I had fiddled with the code... - ah, just added the vosim 
> > opcode
> > 
> > 
> > E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> > 0dBFS level = 32768.0
> > --Csound version 6.08 (double samples) Dec 29 2016
> > [commit: GIT_HASH_VALUE]
> > libsndfile-1.0.25
> > Usage:  csound [-flags] orchfile scorefile
> > Legal flags are:
> > ...
> > 
> > 
> > Regards,
> > 
> >       /re
> > 
> > Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> >> does anyone have this? i'm building an old fasttracker 2 box and it 
> >> would be neat to have to make/modify samples in
> >> Csound mailing list Csound@listserv.heanet.ie 
> >>  
> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to 
> >> https://github.com/csound/csound/issues Discussions of bugs and 
> >> features can be posted here
> > 
> > Csound mailing list
> > Csound@listserv.heanet.ie
> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> > Send bugs reports to
> >        https://github.com/csound/csound/issues
> > Discussions of bugs and features can be posted here
> 
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2022-12-05 19:10
FromAaron Krister Johnson
Subject[Csnd] Going lean/mean/diet with Csound -- possible?
Reviving this old thread...

Victor: you said:
"""
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
"""

So, looking at the code, it's all over the place. I don't get a clean sense that one can, as suggested, simply remove references in `CMakeLists.txt` and not build a family of opcodes.

For starters, I've tried that, and I get compilation errors galore... :/

References to various helper functions needed in multiple places are all over in different files, some of which if I make invisible to `cmake` thinking that they simply define an unwanted opcode, it ends up destroying a low-level library reference that was thrown into the same file; opcode registry entries sometimes are found within the module that defines the opcode; sometimes in things like `entry1.c`. Csound is brilliant and does amazing things, but TBH, this codebase needs some love if it indeed promises to be modular in a user-friendly way.

It's really hard to wrap my head around where things live other than `ag` or `grep`, and then, I find there's no consistent rhyme or reason why things live where they do -- it all seems to be a product of a messy evolution.

That said, there may be an easy answer here. I'm just not seeing it yet.

Ultimately, I'd like to build a "diet" version and have good old fashioned `./configure --no-fft-opcodes --no-pvc-opcodes` style of disabling certain opcodes, if that makes sense. How do I do that, precisely) in the current `cmake` structure?

I think I need some hand-holding from an ace dev who knows the layout of this code top-to-bottom: OR -- simple instructions, step-by-step on how one might do this....the statement "It can be done" hasn't been helpful so far, as I've taken the time to try, a couple of hours at least, and it's fallen flat with no joy.

On Sun, Nov 7, 2021 at 11:19 AM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 6 Nov 2021, at 20:07, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
>
> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?
>
> I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.
>
> Aaron Krister Johnson
> http://www.untwelve.org
>
>
> On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
> Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.
>
> iain
>
> On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
> yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't.
>
> found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P
>
> On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
> Unfortunately I don't think this works in DOS proper, I tried it in
> dosemu (which did run the older v4 binary OK) and it reports
> This program cannot be run in DOS mode.
>
> On 2021-10-27 23:39, rasmus ekman wrote:
> > Here's one that reports as 6.08 (doubles), from 2016:
> > https://abc.se/~re/Stuff/Csound-DOS-608.zip
> >
> > I don't think I had fiddled with the code... - ah, just added the vosim
> > opcode
> >
> >
> > E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> > 0dBFS level = 32768.0
> > --Csound version 6.08 (double samples) Dec 29 2016
> > [commit: GIT_HASH_VALUE]
> > libsndfile-1.0.25
> > Usage:  csound [-flags] orchfile scorefile
> > Legal flags are:
> > ...
> >
> >
> > Regards,
> >
> >       /re
> >
> > Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> >> does anyone have this? i'm building an old fasttracker 2 box and it
> >> would be neat to have to make/modify samples in
> >> Csound mailing list Csound@listserv.heanet.ie
> >> <mailto:Csound@listserv.heanet.ie>
> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> >> https://github.com/csound/csound/issues Discussions of bugs and
> >> features can be posted here
> >
> > Csound mailing list
> > Csound@listserv.heanet.ie
> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> > Send bugs reports to
> >        https://github.com/csound/csound/issues
> > Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2022-12-05 19:21
FromRory Walsh
SubjectRe: [Csnd] Going lean/mean/diet with Csound -- possible?
What platform are you trying to build for? I typically disable all options in a custom cmake file when I'm building. I can dig up one of my 'disable everything' custom cmake files for you tomorrow if you like. Btw, I think Victor might have recently made some changes so that even libsndfile isno longer needed.  

On Mon, 5 Dec 2022 at 19:12, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Reviving this old thread...

Victor: you said:
"""
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
"""

So, looking at the code, it's all over the place. I don't get a clean sense that one can, as suggested, simply remove references in `CMakeLists.txt` and not build a family of opcodes.

For starters, I've tried that, and I get compilation errors galore... :/

References to various helper functions needed in multiple places are all over in different files, some of which if I make invisible to `cmake` thinking that they simply define an unwanted opcode, it ends up destroying a low-level library reference that was thrown into the same file; opcode registry entries sometimes are found within the module that defines the opcode; sometimes in things like `entry1.c`. Csound is brilliant and does amazing things, but TBH, this codebase needs some love if it indeed promises to be modular in a user-friendly way.

It's really hard to wrap my head around where things live other than `ag` or `grep`, and then, I find there's no consistent rhyme or reason why things live where they do -- it all seems to be a product of a messy evolution.

That said, there may be an easy answer here. I'm just not seeing it yet.

Ultimately, I'd like to build a "diet" version and have good old fashioned `./configure --no-fft-opcodes --no-pvc-opcodes` style of disabling certain opcodes, if that makes sense. How do I do that, precisely) in the current `cmake` structure?

I think I need some hand-holding from an ace dev who knows the layout of this code top-to-bottom: OR -- simple instructions, step-by-step on how one might do this....the statement "It can be done" hasn't been helpful so far, as I've taken the time to try, a couple of hours at least, and it's fallen flat with no joy.

On Sun, Nov 7, 2021 at 11:19 AM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 6 Nov 2021, at 20:07, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
>
> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?
>
> I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.
>
> Aaron Krister Johnson
> http://www.untwelve.org
>
>
> On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
> Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.
>
> iain
>
> On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
> yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't.
>
> found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P
>
> On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
> Unfortunately I don't think this works in DOS proper, I tried it in
> dosemu (which did run the older v4 binary OK) and it reports
> This program cannot be run in DOS mode.
>
> On 2021-10-27 23:39, rasmus ekman wrote:
> > Here's one that reports as 6.08 (doubles), from 2016:
> > https://abc.se/~re/Stuff/Csound-DOS-608.zip
> >
> > I don't think I had fiddled with the code... - ah, just added the vosim
> > opcode
> >
> >
> > E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> > 0dBFS level = 32768.0
> > --Csound version 6.08 (double samples) Dec 29 2016
> > [commit: GIT_HASH_VALUE]
> > libsndfile-1.0.25
> > Usage:  csound [-flags] orchfile scorefile
> > Legal flags are:
> > ...
> >
> >
> > Regards,
> >
> >       /re
> >
> > Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> >> does anyone have this? i'm building an old fasttracker 2 box and it
> >> would be neat to have to make/modify samples in
> >> Csound mailing list Csound@listserv.heanet.ie
> >> <mailto:Csound@listserv.heanet.ie>
> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> >> https://github.com/csound/csound/issues Discussions of bugs and
> >> features can be posted here
> >
> > Csound mailing list
> > Csound@listserv.heanet.ie
> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> > Send bugs reports to
> >        https://github.com/csound/csound/issues
> > Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2022-12-05 20:27
FromAaron Krister Johnson
SubjectRe: [Csnd] Going lean/mean/diet with Csound -- possible?
Linux (Mint 21)

So, what file are you talking about? I need specifics. `CMakeLists.txt`?

I am more familiar with `./configure; make; make install` dances than I am with `cmake` and what goes into it, for starters.

On Mon, Dec 5, 2022 at 12:23 PM Rory Walsh <rorywalsh@ear.ie> wrote:
What platform are you trying to build for? I typically disable all options in a custom cmake file when I'm building. I can dig up one of my 'disable everything' custom cmake files for you tomorrow if you like. Btw, I think Victor might have recently made some changes so that even libsndfile isno longer needed.  

On Mon, 5 Dec 2022 at 19:12, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Reviving this old thread...

Victor: you said:
"""
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
"""

So, looking at the code, it's all over the place. I don't get a clean sense that one can, as suggested, simply remove references in `CMakeLists.txt` and not build a family of opcodes.

For starters, I've tried that, and I get compilation errors galore... :/

References to various helper functions needed in multiple places are all over in different files, some of which if I make invisible to `cmake` thinking that they simply define an unwanted opcode, it ends up destroying a low-level library reference that was thrown into the same file; opcode registry entries sometimes are found within the module that defines the opcode; sometimes in things like `entry1.c`. Csound is brilliant and does amazing things, but TBH, this codebase needs some love if it indeed promises to be modular in a user-friendly way.

It's really hard to wrap my head around where things live other than `ag` or `grep`, and then, I find there's no consistent rhyme or reason why things live where they do -- it all seems to be a product of a messy evolution.

That said, there may be an easy answer here. I'm just not seeing it yet.

Ultimately, I'd like to build a "diet" version and have good old fashioned `./configure --no-fft-opcodes --no-pvc-opcodes` style of disabling certain opcodes, if that makes sense. How do I do that, precisely) in the current `cmake` structure?

I think I need some hand-holding from an ace dev who knows the layout of this code top-to-bottom: OR -- simple instructions, step-by-step on how one might do this....the statement "It can be done" hasn't been helpful so far, as I've taken the time to try, a couple of hours at least, and it's fallen flat with no joy.

On Sun, Nov 7, 2021 at 11:19 AM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 6 Nov 2021, at 20:07, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
>
> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?
>
> I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.
>
> Aaron Krister Johnson
> http://www.untwelve.org
>
>
> On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
> Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.
>
> iain
>
> On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
> yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't.
>
> found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P
>
> On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
> Unfortunately I don't think this works in DOS proper, I tried it in
> dosemu (which did run the older v4 binary OK) and it reports
> This program cannot be run in DOS mode.
>
> On 2021-10-27 23:39, rasmus ekman wrote:
> > Here's one that reports as 6.08 (doubles), from 2016:
> > https://abc.se/~re/Stuff/Csound-DOS-608.zip
> >
> > I don't think I had fiddled with the code... - ah, just added the vosim
> > opcode
> >
> >
> > E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> > 0dBFS level = 32768.0
> > --Csound version 6.08 (double samples) Dec 29 2016
> > [commit: GIT_HASH_VALUE]
> > libsndfile-1.0.25
> > Usage:  csound [-flags] orchfile scorefile
> > Legal flags are:
> > ...
> >
> >
> > Regards,
> >
> >       /re
> >
> > Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> >> does anyone have this? i'm building an old fasttracker 2 box and it
> >> would be neat to have to make/modify samples in
> >> Csound mailing list Csound@listserv.heanet.ie
> >> <mailto:Csound@listserv.heanet.ie>
> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> >> https://github.com/csound/csound/issues Discussions of bugs and
> >> features can be posted here
> >
> > Csound mailing list
> > Csound@listserv.heanet.ie
> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> > Send bugs reports to
> >        https://github.com/csound/csound/issues
> > Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2022-12-05 20:37
FromRory Walsh
SubjectRe: [Csnd] Going lean/mean/diet with Csound -- possible?
In the Csound repo there is a Custom.cmake.ex file. Open it and disable all the features you want. Then save that file as Custom.cmake Then run

mkdir build && cd build
cmake ..
make 
make install

btw, you can also run cmake-gui, open the Csound repo from it and you can easily set the build options through a user interface. It will configure cmake for you, but you will still need to run make from the build dir.  

On Mon, 5 Dec 2022 at 20:29, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Linux (Mint 21)

So, what file are you talking about? I need specifics. `CMakeLists.txt`?

I am more familiar with `./configure; make; make install` dances than I am with `cmake` and what goes into it, for starters.

On Mon, Dec 5, 2022 at 12:23 PM Rory Walsh <rorywalsh@ear.ie> wrote:
What platform are you trying to build for? I typically disable all options in a custom cmake file when I'm building. I can dig up one of my 'disable everything' custom cmake files for you tomorrow if you like. Btw, I think Victor might have recently made some changes so that even libsndfile isno longer needed.  

On Mon, 5 Dec 2022 at 19:12, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Reviving this old thread...

Victor: you said:
"""
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
"""

So, looking at the code, it's all over the place. I don't get a clean sense that one can, as suggested, simply remove references in `CMakeLists.txt` and not build a family of opcodes.

For starters, I've tried that, and I get compilation errors galore... :/

References to various helper functions needed in multiple places are all over in different files, some of which if I make invisible to `cmake` thinking that they simply define an unwanted opcode, it ends up destroying a low-level library reference that was thrown into the same file; opcode registry entries sometimes are found within the module that defines the opcode; sometimes in things like `entry1.c`. Csound is brilliant and does amazing things, but TBH, this codebase needs some love if it indeed promises to be modular in a user-friendly way.

It's really hard to wrap my head around where things live other than `ag` or `grep`, and then, I find there's no consistent rhyme or reason why things live where they do -- it all seems to be a product of a messy evolution.

That said, there may be an easy answer here. I'm just not seeing it yet.

Ultimately, I'd like to build a "diet" version and have good old fashioned `./configure --no-fft-opcodes --no-pvc-opcodes` style of disabling certain opcodes, if that makes sense. How do I do that, precisely) in the current `cmake` structure?

I think I need some hand-holding from an ace dev who knows the layout of this code top-to-bottom: OR -- simple instructions, step-by-step on how one might do this....the statement "It can be done" hasn't been helpful so far, as I've taken the time to try, a couple of hours at least, and it's fallen flat with no joy.

On Sun, Nov 7, 2021 at 11:19 AM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 6 Nov 2021, at 20:07, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
>
> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?
>
> I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.
>
> Aaron Krister Johnson
> http://www.untwelve.org
>
>
> On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
> Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.
>
> iain
>
> On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
> yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't.
>
> found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P
>
> On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
> Unfortunately I don't think this works in DOS proper, I tried it in
> dosemu (which did run the older v4 binary OK) and it reports
> This program cannot be run in DOS mode.
>
> On 2021-10-27 23:39, rasmus ekman wrote:
> > Here's one that reports as 6.08 (doubles), from 2016:
> > https://abc.se/~re/Stuff/Csound-DOS-608.zip
> >
> > I don't think I had fiddled with the code... - ah, just added the vosim
> > opcode
> >
> >
> > E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> > 0dBFS level = 32768.0
> > --Csound version 6.08 (double samples) Dec 29 2016
> > [commit: GIT_HASH_VALUE]
> > libsndfile-1.0.25
> > Usage:  csound [-flags] orchfile scorefile
> > Legal flags are:
> > ...
> >
> >
> > Regards,
> >
> >       /re
> >
> > Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> >> does anyone have this? i'm building an old fasttracker 2 box and it
> >> would be neat to have to make/modify samples in
> >> Csound mailing list Csound@listserv.heanet.ie
> >> <mailto:Csound@listserv.heanet.ie>
> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> >> https://github.com/csound/csound/issues Discussions of bugs and
> >> features can be posted here
> >
> > Csound mailing list
> > Csound@listserv.heanet.ie
> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> > Send bugs reports to
> >        https://github.com/csound/csound/issues
> > Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2022-12-05 20:56
FromAaron Krister Johnson
SubjectRe: [Csnd] Going lean/mean/diet with Csound -- possible?

On Mon, Dec 5, 2022 at 1:39 PM Rory Walsh <rorywalsh@ear.ie> wrote:
In the Csound repo there is a Custom.cmake.ex file. Open it and disable all the features you want. Then save that file as Custom.cmake Then run

mkdir build && cd build
cmake ..
make 
make install

btw, you can also run cmake-gui, open the Csound repo from it and you can easily set the build options through a user interface. It will configure cmake for you, but you will still need to run make from the build dir.  

On Mon, 5 Dec 2022 at 20:29, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Linux (Mint 21)

So, what file are you talking about? I need specifics. `CMakeLists.txt`?

I am more familiar with `./configure; make; make install` dances than I am with `cmake` and what goes into it, for starters.

On Mon, Dec 5, 2022 at 12:23 PM Rory Walsh <rorywalsh@ear.ie> wrote:
What platform are you trying to build for? I typically disable all options in a custom cmake file when I'm building. I can dig up one of my 'disable everything' custom cmake files for you tomorrow if you like. Btw, I think Victor might have recently made some changes so that even libsndfile isno longer needed.  

On Mon, 5 Dec 2022 at 19:12, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Reviving this old thread...

Victor: you said:
"""
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
"""

So, looking at the code, it's all over the place. I don't get a clean sense that one can, as suggested, simply remove references in `CMakeLists.txt` and not build a family of opcodes.

For starters, I've tried that, and I get compilation errors galore... :/

References to various helper functions needed in multiple places are all over in different files, some of which if I make invisible to `cmake` thinking that they simply define an unwanted opcode, it ends up destroying a low-level library reference that was thrown into the same file; opcode registry entries sometimes are found within the module that defines the opcode; sometimes in things like `entry1.c`. Csound is brilliant and does amazing things, but TBH, this codebase needs some love if it indeed promises to be modular in a user-friendly way.

It's really hard to wrap my head around where things live other than `ag` or `grep`, and then, I find there's no consistent rhyme or reason why things live where they do -- it all seems to be a product of a messy evolution.

That said, there may be an easy answer here. I'm just not seeing it yet.

Ultimately, I'd like to build a "diet" version and have good old fashioned `./configure --no-fft-opcodes --no-pvc-opcodes` style of disabling certain opcodes, if that makes sense. How do I do that, precisely) in the current `cmake` structure?

I think I need some hand-holding from an ace dev who knows the layout of this code top-to-bottom: OR -- simple instructions, step-by-step on how one might do this....the statement "It can be done" hasn't been helpful so far, as I've taken the time to try, a couple of hours at least, and it's fallen flat with no joy.

On Sun, Nov 7, 2021 at 11:19 AM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 6 Nov 2021, at 20:07, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
>
> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?
>
> I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.
>
> Aaron Krister Johnson
> http://www.untwelve.org
>
>
> On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
> Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.
>
> iain
>
> On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
> yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't.
>
> found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P
>
> On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
> Unfortunately I don't think this works in DOS proper, I tried it in
> dosemu (which did run the older v4 binary OK) and it reports
> This program cannot be run in DOS mode.
>
> On 2021-10-27 23:39, rasmus ekman wrote:
> > Here's one that reports as 6.08 (doubles), from 2016:
> > https://abc.se/~re/Stuff/Csound-DOS-608.zip
> >
> > I don't think I had fiddled with the code... - ah, just added the vosim
> > opcode
> >
> >
> > E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> > 0dBFS level = 32768.0
> > --Csound version 6.08 (double samples) Dec 29 2016
> > [commit: GIT_HASH_VALUE]
> > libsndfile-1.0.25
> > Usage:  csound [-flags] orchfile scorefile
> > Legal flags are:
> > ...
> >
> >
> > Regards,
> >
> >       /re
> >
> > Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> >> does anyone have this? i'm building an old fasttracker 2 box and it
> >> would be neat to have to make/modify samples in
> >> Csound mailing list Csound@listserv.heanet.ie
> >> <mailto:Csound@listserv.heanet.ie>
> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> >> https://github.com/csound/csound/issues Discussions of bugs and
> >> features can be posted here
> >
> > Csound mailing list
> > Csound@listserv.heanet.ie
> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> > Send bugs reports to
> >        https://github.com/csound/csound/issues
> > Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2022-12-05 21:01
FromAaron Krister Johnson
SubjectRe: [Csnd] Going lean/mean/diet with Csound -- possible?
Although -- this still doesn't tell me how to disable various opcodes from being built....

These options in the file mentioned have nothing to do with choosing subsets of opcodes in a modular way.


On Mon, Dec 5, 2022 at 1:56 PM Aaron Krister Johnson <akjmicro@gmail.com> wrote:

On Mon, Dec 5, 2022 at 1:39 PM Rory Walsh <rorywalsh@ear.ie> wrote:
In the Csound repo there is a Custom.cmake.ex file. Open it and disable all the features you want. Then save that file as Custom.cmake Then run

mkdir build && cd build
cmake ..
make 
make install

btw, you can also run cmake-gui, open the Csound repo from it and you can easily set the build options through a user interface. It will configure cmake for you, but you will still need to run make from the build dir.  

On Mon, 5 Dec 2022 at 20:29, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Linux (Mint 21)

So, what file are you talking about? I need specifics. `CMakeLists.txt`?

I am more familiar with `./configure; make; make install` dances than I am with `cmake` and what goes into it, for starters.

On Mon, Dec 5, 2022 at 12:23 PM Rory Walsh <rorywalsh@ear.ie> wrote:
What platform are you trying to build for? I typically disable all options in a custom cmake file when I'm building. I can dig up one of my 'disable everything' custom cmake files for you tomorrow if you like. Btw, I think Victor might have recently made some changes so that even libsndfile isno longer needed.  

On Mon, 5 Dec 2022 at 19:12, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Reviving this old thread...

Victor: you said:
"""
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
"""

So, looking at the code, it's all over the place. I don't get a clean sense that one can, as suggested, simply remove references in `CMakeLists.txt` and not build a family of opcodes.

For starters, I've tried that, and I get compilation errors galore... :/

References to various helper functions needed in multiple places are all over in different files, some of which if I make invisible to `cmake` thinking that they simply define an unwanted opcode, it ends up destroying a low-level library reference that was thrown into the same file; opcode registry entries sometimes are found within the module that defines the opcode; sometimes in things like `entry1.c`. Csound is brilliant and does amazing things, but TBH, this codebase needs some love if it indeed promises to be modular in a user-friendly way.

It's really hard to wrap my head around where things live other than `ag` or `grep`, and then, I find there's no consistent rhyme or reason why things live where they do -- it all seems to be a product of a messy evolution.

That said, there may be an easy answer here. I'm just not seeing it yet.

Ultimately, I'd like to build a "diet" version and have good old fashioned `./configure --no-fft-opcodes --no-pvc-opcodes` style of disabling certain opcodes, if that makes sense. How do I do that, precisely) in the current `cmake` structure?

I think I need some hand-holding from an ace dev who knows the layout of this code top-to-bottom: OR -- simple instructions, step-by-step on how one might do this....the statement "It can be done" hasn't been helpful so far, as I've taken the time to try, a couple of hours at least, and it's fallen flat with no joy.

On Sun, Nov 7, 2021 at 11:19 AM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 6 Nov 2021, at 20:07, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
>
> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?
>
> I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.
>
> Aaron Krister Johnson
> http://www.untwelve.org
>
>
> On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
> Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.
>
> iain
>
> On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
> yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't.
>
> found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P
>
> On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
> Unfortunately I don't think this works in DOS proper, I tried it in
> dosemu (which did run the older v4 binary OK) and it reports
> This program cannot be run in DOS mode.
>
> On 2021-10-27 23:39, rasmus ekman wrote:
> > Here's one that reports as 6.08 (doubles), from 2016:
> > https://abc.se/~re/Stuff/Csound-DOS-608.zip
> >
> > I don't think I had fiddled with the code... - ah, just added the vosim
> > opcode
> >
> >
> > E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> > 0dBFS level = 32768.0
> > --Csound version 6.08 (double samples) Dec 29 2016
> > [commit: GIT_HASH_VALUE]
> > libsndfile-1.0.25
> > Usage:  csound [-flags] orchfile scorefile
> > Legal flags are:
> > ...
> >
> >
> > Regards,
> >
> >       /re
> >
> > Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> >> does anyone have this? i'm building an old fasttracker 2 box and it
> >> would be neat to have to make/modify samples in
> >> Csound mailing list Csound@listserv.heanet.ie
> >> <mailto:Csound@listserv.heanet.ie>
> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> >> https://github.com/csound/csound/issues Discussions of bugs and
> >> features can be posted here
> >
> > Csound mailing list
> > Csound@listserv.heanet.ie
> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> > Send bugs reports to
> >        https://github.com/csound/csound/issues
> > Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2022-12-05 22:15
FromRory Walsh
SubjectRe: [Csnd] Going lean/mean/diet with Csound -- possible?
What opcodes are you referring to? Most of the internal opcodes can't be disabled. But you can always just thrash any opcode libraries/interfaces you don't want. 

On Mon 5 Dec 2022, 9:03 p.m. Aaron Krister Johnson, <akjmicro@gmail.com> wrote:
Although -- this still doesn't tell me how to disable various opcodes from being built....

These options in the file mentioned have nothing to do with choosing subsets of opcodes in a modular way.


On Mon, Dec 5, 2022 at 1:56 PM Aaron Krister Johnson <akjmicro@gmail.com> wrote:

On Mon, Dec 5, 2022 at 1:39 PM Rory Walsh <rorywalsh@ear.ie> wrote:
In the Csound repo there is a Custom.cmake.ex file. Open it and disable all the features you want. Then save that file as Custom.cmake Then run

mkdir build && cd build
cmake ..
make 
make install

btw, you can also run cmake-gui, open the Csound repo from it and you can easily set the build options through a user interface. It will configure cmake for you, but you will still need to run make from the build dir.  

On Mon, 5 Dec 2022 at 20:29, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Linux (Mint 21)

So, what file are you talking about? I need specifics. `CMakeLists.txt`?

I am more familiar with `./configure; make; make install` dances than I am with `cmake` and what goes into it, for starters.

On Mon, Dec 5, 2022 at 12:23 PM Rory Walsh <rorywalsh@ear.ie> wrote:
What platform are you trying to build for? I typically disable all options in a custom cmake file when I'm building. I can dig up one of my 'disable everything' custom cmake files for you tomorrow if you like. Btw, I think Victor might have recently made some changes so that even libsndfile isno longer needed.  

On Mon, 5 Dec 2022 at 19:12, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Reviving this old thread...

Victor: you said:
"""
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
"""

So, looking at the code, it's all over the place. I don't get a clean sense that one can, as suggested, simply remove references in `CMakeLists.txt` and not build a family of opcodes.

For starters, I've tried that, and I get compilation errors galore... :/

References to various helper functions needed in multiple places are all over in different files, some of which if I make invisible to `cmake` thinking that they simply define an unwanted opcode, it ends up destroying a low-level library reference that was thrown into the same file; opcode registry entries sometimes are found within the module that defines the opcode; sometimes in things like `entry1.c`. Csound is brilliant and does amazing things, but TBH, this codebase needs some love if it indeed promises to be modular in a user-friendly way.

It's really hard to wrap my head around where things live other than `ag` or `grep`, and then, I find there's no consistent rhyme or reason why things live where they do -- it all seems to be a product of a messy evolution.

That said, there may be an easy answer here. I'm just not seeing it yet.

Ultimately, I'd like to build a "diet" version and have good old fashioned `./configure --no-fft-opcodes --no-pvc-opcodes` style of disabling certain opcodes, if that makes sense. How do I do that, precisely) in the current `cmake` structure?

I think I need some hand-holding from an ace dev who knows the layout of this code top-to-bottom: OR -- simple instructions, step-by-step on how one might do this....the statement "It can be done" hasn't been helpful so far, as I've taken the time to try, a couple of hours at least, and it's fallen flat with no joy.

On Sun, Nov 7, 2021 at 11:19 AM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 6 Nov 2021, at 20:07, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
>
> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?
>
> I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.
>
> Aaron Krister Johnson
> http://www.untwelve.org
>
>
> On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
> Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.
>
> iain
>
> On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
> yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't.
>
> found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P
>
> On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
> Unfortunately I don't think this works in DOS proper, I tried it in
> dosemu (which did run the older v4 binary OK) and it reports
> This program cannot be run in DOS mode.
>
> On 2021-10-27 23:39, rasmus ekman wrote:
> > Here's one that reports as 6.08 (doubles), from 2016:
> > https://abc.se/~re/Stuff/Csound-DOS-608.zip
> >
> > I don't think I had fiddled with the code... - ah, just added the vosim
> > opcode
> >
> >
> > E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> > 0dBFS level = 32768.0
> > --Csound version 6.08 (double samples) Dec 29 2016
> > [commit: GIT_HASH_VALUE]
> > libsndfile-1.0.25
> > Usage:  csound [-flags] orchfile scorefile
> > Legal flags are:
> > ...
> >
> >
> > Regards,
> >
> >       /re
> >
> > Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> >> does anyone have this? i'm building an old fasttracker 2 box and it
> >> would be neat to have to make/modify samples in
> >> Csound mailing list Csound@listserv.heanet.ie
> >> <mailto:Csound@listserv.heanet.ie>
> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> >> https://github.com/csound/csound/issues Discussions of bugs and
> >> features can be posted here
> >
> > Csound mailing list
> > Csound@listserv.heanet.ie
> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> > Send bugs reports to
> >        https://github.com/csound/csound/issues
> > Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2022-12-05 22:16
FromRory Walsh
SubjectRe: [Csnd] Going lean/mean/diet with Csound -- possible?
Btw there is a cmake flag that will list all possible Csound options but I can't recall what it is.. 🤦

On Mon 5 Dec 2022, 10:15 p.m. Rory Walsh, <rorywalsh@ear.ie> wrote:
What opcodes are you referring to? Most of the internal opcodes can't be disabled. But you can always just thrash any opcode libraries/interfaces you don't want. 

On Mon 5 Dec 2022, 9:03 p.m. Aaron Krister Johnson, <akjmicro@gmail.com> wrote:
Although -- this still doesn't tell me how to disable various opcodes from being built....

These options in the file mentioned have nothing to do with choosing subsets of opcodes in a modular way.


On Mon, Dec 5, 2022 at 1:56 PM Aaron Krister Johnson <akjmicro@gmail.com> wrote:

On Mon, Dec 5, 2022 at 1:39 PM Rory Walsh <rorywalsh@ear.ie> wrote:
In the Csound repo there is a Custom.cmake.ex file. Open it and disable all the features you want. Then save that file as Custom.cmake Then run

mkdir build && cd build
cmake ..
make 
make install

btw, you can also run cmake-gui, open the Csound repo from it and you can easily set the build options through a user interface. It will configure cmake for you, but you will still need to run make from the build dir.  

On Mon, 5 Dec 2022 at 20:29, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Linux (Mint 21)

So, what file are you talking about? I need specifics. `CMakeLists.txt`?

I am more familiar with `./configure; make; make install` dances than I am with `cmake` and what goes into it, for starters.

On Mon, Dec 5, 2022 at 12:23 PM Rory Walsh <rorywalsh@ear.ie> wrote:
What platform are you trying to build for? I typically disable all options in a custom cmake file when I'm building. I can dig up one of my 'disable everything' custom cmake files for you tomorrow if you like. Btw, I think Victor might have recently made some changes so that even libsndfile isno longer needed.  

On Mon, 5 Dec 2022 at 19:12, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Reviving this old thread...

Victor: you said:
"""
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
"""

So, looking at the code, it's all over the place. I don't get a clean sense that one can, as suggested, simply remove references in `CMakeLists.txt` and not build a family of opcodes.

For starters, I've tried that, and I get compilation errors galore... :/

References to various helper functions needed in multiple places are all over in different files, some of which if I make invisible to `cmake` thinking that they simply define an unwanted opcode, it ends up destroying a low-level library reference that was thrown into the same file; opcode registry entries sometimes are found within the module that defines the opcode; sometimes in things like `entry1.c`. Csound is brilliant and does amazing things, but TBH, this codebase needs some love if it indeed promises to be modular in a user-friendly way.

It's really hard to wrap my head around where things live other than `ag` or `grep`, and then, I find there's no consistent rhyme or reason why things live where they do -- it all seems to be a product of a messy evolution.

That said, there may be an easy answer here. I'm just not seeing it yet.

Ultimately, I'd like to build a "diet" version and have good old fashioned `./configure --no-fft-opcodes --no-pvc-opcodes` style of disabling certain opcodes, if that makes sense. How do I do that, precisely) in the current `cmake` structure?

I think I need some hand-holding from an ace dev who knows the layout of this code top-to-bottom: OR -- simple instructions, step-by-step on how one might do this....the statement "It can be done" hasn't been helpful so far, as I've taken the time to try, a couple of hours at least, and it's fallen flat with no joy.

On Sun, Nov 7, 2021 at 11:19 AM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 6 Nov 2021, at 20:07, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
>
> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?
>
> I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.
>
> Aaron Krister Johnson
> http://www.untwelve.org
>
>
> On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
> Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.
>
> iain
>
> On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
> yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't.
>
> found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P
>
> On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
> Unfortunately I don't think this works in DOS proper, I tried it in
> dosemu (which did run the older v4 binary OK) and it reports
> This program cannot be run in DOS mode.
>
> On 2021-10-27 23:39, rasmus ekman wrote:
> > Here's one that reports as 6.08 (doubles), from 2016:
> > https://abc.se/~re/Stuff/Csound-DOS-608.zip
> >
> > I don't think I had fiddled with the code... - ah, just added the vosim
> > opcode
> >
> >
> > E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> > 0dBFS level = 32768.0
> > --Csound version 6.08 (double samples) Dec 29 2016
> > [commit: GIT_HASH_VALUE]
> > libsndfile-1.0.25
> > Usage:  csound [-flags] orchfile scorefile
> > Legal flags are:
> > ...
> >
> >
> > Regards,
> >
> >       /re
> >
> > Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> >> does anyone have this? i'm building an old fasttracker 2 box and it
> >> would be neat to have to make/modify samples in
> >> Csound mailing list Csound@listserv.heanet.ie
> >> <mailto:Csound@listserv.heanet.ie>
> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> >> https://github.com/csound/csound/issues Discussions of bugs and
> >> features can be posted here
> >
> > Csound mailing list
> > Csound@listserv.heanet.ie
> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> > Send bugs reports to
> >        https://github.com/csound/csound/issues
> > Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2022-12-05 22:37
FromAaron Krister Johnson
SubjectRe: [Csnd] Going lean/mean/diet with Csound -- possible?
Hi Rory,

Re: thrashing...I am not sure that is true.

And what would be the method of doing so?

What I have tried has failed.

On Mon, Dec 5, 2022, 15:16 Rory Walsh <rorywalsh@ear.ie> wrote:
What opcodes are you referring to? Most of the internal opcodes can't be disabled. But you can always just thrash any opcode libraries/interfaces you don't want. 

On Mon 5 Dec 2022, 9:03 p.m. Aaron Krister Johnson, <akjmicro@gmail.com> wrote:
Although -- this still doesn't tell me how to disable various opcodes from being built....

These options in the file mentioned have nothing to do with choosing subsets of opcodes in a modular way.


On Mon, Dec 5, 2022 at 1:56 PM Aaron Krister Johnson <akjmicro@gmail.com> wrote:

On Mon, Dec 5, 2022 at 1:39 PM Rory Walsh <rorywalsh@ear.ie> wrote:
In the Csound repo there is a Custom.cmake.ex file. Open it and disable all the features you want. Then save that file as Custom.cmake Then run

mkdir build && cd build
cmake ..
make 
make install

btw, you can also run cmake-gui, open the Csound repo from it and you can easily set the build options through a user interface. It will configure cmake for you, but you will still need to run make from the build dir.  

On Mon, 5 Dec 2022 at 20:29, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Linux (Mint 21)

So, what file are you talking about? I need specifics. `CMakeLists.txt`?

I am more familiar with `./configure; make; make install` dances than I am with `cmake` and what goes into it, for starters.

On Mon, Dec 5, 2022 at 12:23 PM Rory Walsh <rorywalsh@ear.ie> wrote:
What platform are you trying to build for? I typically disable all options in a custom cmake file when I'm building. I can dig up one of my 'disable everything' custom cmake files for you tomorrow if you like. Btw, I think Victor might have recently made some changes so that even libsndfile isno longer needed.  

On Mon, 5 Dec 2022 at 19:12, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Reviving this old thread...

Victor: you said:
"""
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
"""

So, looking at the code, it's all over the place. I don't get a clean sense that one can, as suggested, simply remove references in `CMakeLists.txt` and not build a family of opcodes.

For starters, I've tried that, and I get compilation errors galore... :/

References to various helper functions needed in multiple places are all over in different files, some of which if I make invisible to `cmake` thinking that they simply define an unwanted opcode, it ends up destroying a low-level library reference that was thrown into the same file; opcode registry entries sometimes are found within the module that defines the opcode; sometimes in things like `entry1.c`. Csound is brilliant and does amazing things, but TBH, this codebase needs some love if it indeed promises to be modular in a user-friendly way.

It's really hard to wrap my head around where things live other than `ag` or `grep`, and then, I find there's no consistent rhyme or reason why things live where they do -- it all seems to be a product of a messy evolution.

That said, there may be an easy answer here. I'm just not seeing it yet.

Ultimately, I'd like to build a "diet" version and have good old fashioned `./configure --no-fft-opcodes --no-pvc-opcodes` style of disabling certain opcodes, if that makes sense. How do I do that, precisely) in the current `cmake` structure?

I think I need some hand-holding from an ace dev who knows the layout of this code top-to-bottom: OR -- simple instructions, step-by-step on how one might do this....the statement "It can be done" hasn't been helpful so far, as I've taken the time to try, a couple of hours at least, and it's fallen flat with no joy.

On Sun, Nov 7, 2021 at 11:19 AM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 6 Nov 2021, at 20:07, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
>
> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?
>
> I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.
>
> Aaron Krister Johnson
> http://www.untwelve.org
>
>
> On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
> Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.
>
> iain
>
> On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
> yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't.
>
> found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P
>
> On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
> Unfortunately I don't think this works in DOS proper, I tried it in
> dosemu (which did run the older v4 binary OK) and it reports
> This program cannot be run in DOS mode.
>
> On 2021-10-27 23:39, rasmus ekman wrote:
> > Here's one that reports as 6.08 (doubles), from 2016:
> > https://abc.se/~re/Stuff/Csound-DOS-608.zip
> >
> > I don't think I had fiddled with the code... - ah, just added the vosim
> > opcode
> >
> >
> > E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> > 0dBFS level = 32768.0
> > --Csound version 6.08 (double samples) Dec 29 2016
> > [commit: GIT_HASH_VALUE]
> > libsndfile-1.0.25
> > Usage:  csound [-flags] orchfile scorefile
> > Legal flags are:
> > ...
> >
> >
> > Regards,
> >
> >       /re
> >
> > Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> >> does anyone have this? i'm building an old fasttracker 2 box and it
> >> would be neat to have to make/modify samples in
> >> Csound mailing list Csound@listserv.heanet.ie
> >> <mailto:Csound@listserv.heanet.ie>
> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> >> https://github.com/csound/csound/issues Discussions of bugs and
> >> features can be posted here
> >
> > Csound mailing list
> > Csound@listserv.heanet.ie
> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> > Send bugs reports to
> >        https://github.com/csound/csound/issues
> > Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2022-12-05 23:00
FromVictor Lazzarini
SubjectRe: [Csnd] [EXTERNAL] Re: [Csnd] Going lean/mean/diet with Csound -- possible?
Maybe you misunderstood my comment. We removed almost all opcode libs with external dependencies from the main repo into the plugins repo. That is all we did, all other opcodes are still in the main repo. You can also configure the build to remove some elements in the build though cmake options.

John ffitch has worked on a version of Csound 7 that attempts to make custom builds of Csound with only selected opcodes. That is in the minimal7 branch and is described in his ICSC2022 paper.

And Rory is right to say that you can now build Csound (version 7, from the develop branch) with no dependencies at all. This opens the possibility of running Csound on bare metal, perhaps, if the standard C lib is present.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 5 Dec 2022, at 21:03, Aaron Krister Johnson <akjmicro@gmail.com> wrote:



*Warning*

This email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.

Although -- this still doesn't tell me how to disable various opcodes from being built....

These options in the file mentioned have nothing to do with choosing subsets of opcodes in a modular way.


On Mon, Dec 5, 2022 at 1:56 PM Aaron Krister Johnson <akjmicro@gmail.com> wrote:

On Mon, Dec 5, 2022 at 1:39 PM Rory Walsh <rorywalsh@ear.ie> wrote:
In the Csound repo there is a Custom.cmake.ex file. Open it and disable all the features you want. Then save that file as Custom.cmake Then run

mkdir build && cd build
cmake ..
make 
make install

btw, you can also run cmake-gui, open the Csound repo from it and you can easily set the build options through a user interface. It will configure cmake for you, but you will still need to run make from the build dir.  

On Mon, 5 Dec 2022 at 20:29, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Linux (Mint 21)

So, what file are you talking about? I need specifics. `CMakeLists.txt`?

I am more familiar with `./configure; make; make install` dances than I am with `cmake` and what goes into it, for starters.

On Mon, Dec 5, 2022 at 12:23 PM Rory Walsh <rorywalsh@ear.ie> wrote:
What platform are you trying to build for? I typically disable all options in a custom cmake file when I'm building. I can dig up one of my 'disable everything' custom cmake files for you tomorrow if you like. Btw, I think Victor might have recently made some changes so that even libsndfile isno longer needed.  

On Mon, 5 Dec 2022 at 19:12, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Reviving this old thread...

Victor: you said:
"""
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
"""

So, looking at the code, it's all over the place. I don't get a clean sense that one can, as suggested, simply remove references in `CMakeLists.txt` and not build a family of opcodes.

For starters, I've tried that, and I get compilation errors galore... :/

References to various helper functions needed in multiple places are all over in different files, some of which if I make invisible to `cmake` thinking that they simply define an unwanted opcode, it ends up destroying a low-level library reference that was thrown into the same file; opcode registry entries sometimes are found within the module that defines the opcode; sometimes in things like `entry1.c`. Csound is brilliant and does amazing things, but TBH, this codebase needs some love if it indeed promises to be modular in a user-friendly way.

It's really hard to wrap my head around where things live other than `ag` or `grep`, and then, I find there's no consistent rhyme or reason why things live where they do -- it all seems to be a product of a messy evolution.

That said, there may be an easy answer here. I'm just not seeing it yet.

Ultimately, I'd like to build a "diet" version and have good old fashioned `./configure --no-fft-opcodes --no-pvc-opcodes` style of disabling certain opcodes, if that makes sense. How do I do that, precisely) in the current `cmake` structure?

I think I need some hand-holding from an ace dev who knows the layout of this code top-to-bottom: OR -- simple instructions, step-by-step on how one might do this....the statement "It can be done" hasn't been helpful so far, as I've taken the time to try, a couple of hours at least, and it's fallen flat with no joy.

On Sun, Nov 7, 2021 at 11:19 AM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 6 Nov 2021, at 20:07, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
>
> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?
>
> I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.
>
> Aaron Krister Johnson
> http://www.untwelve.org
>
>
> On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
> Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.
>
> iain
>
> On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
> yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't.
>
> found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P
>
> On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
> Unfortunately I don't think this works in DOS proper, I tried it in
> dosemu (which did run the older v4 binary OK) and it reports
> This program cannot be run in DOS mode.
>
> On 2021-10-27 23:39, rasmus ekman wrote:
> > Here's one that reports as 6.08 (doubles), from 2016:
> > https://abc.se/~re/Stuff/Csound-DOS-608.zip
> >
> > I don't think I had fiddled with the code... - ah, just added the vosim
> > opcode
> >
> >
> > E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> > 0dBFS level = 32768.0
> > --Csound version 6.08 (double samples) Dec 29 2016
> > [commit: GIT_HASH_VALUE]
> > libsndfile-1.0.25
> > Usage:  csound [-flags] orchfile scorefile
> > Legal flags are:
> > ...
> >
> >
> > Regards,
> >
> >       /re
> >
> > Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> >> does anyone have this? i'm building an old fasttracker 2 box and it
> >> would be neat to have to make/modify samples in
> >> Csound mailing list Csound@listserv.heanet.ie
> >> <mailto:Csound@listserv.heanet.ie>
> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> >> https://github.com/csound/csound/issues Discussions of bugs and
> >> features can be posted here
> >
> > Csound mailing list
> > Csound@listserv.heanet.ie
> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> > Send bugs reports to
> >        https://github.com/csound/csound/issues
> > Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2022-12-05 23:09
FromAaron Krister Johnson
SubjectRe: [Csnd] [EXTERNAL] Re: [Csnd] Going lean/mean/diet with Csound -- possible?

On Mon, Dec 5, 2022 at 4:01 PM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
Maybe you misunderstood my comment. We removed almost all opcode libs with external dependencies from the main repo into the plugins repo. That is all we did, all other opcodes are still in the main repo. You can also configure the build to remove some elements in the build though cmake options.

John ffitch has worked on a version of Csound 7 that attempts to make custom builds of Csound with only selected opcodes. That is in the minimal7 branch and is described in his ICSC2022 paper.

And Rory is right to say that you can now build Csound (version 7, from the develop branch) with no dependencies at all. This opens the possibility of running Csound on bare metal, perhaps, if the standard C lib is present.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 5 Dec 2022, at 21:03, Aaron Krister Johnson <akjmicro@gmail.com> wrote:



*Warning*

This email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.

Although -- this still doesn't tell me how to disable various opcodes from being built....

These options in the file mentioned have nothing to do with choosing subsets of opcodes in a modular way.


On Mon, Dec 5, 2022 at 1:56 PM Aaron Krister Johnson <akjmicro@gmail.com> wrote:

On Mon, Dec 5, 2022 at 1:39 PM Rory Walsh <rorywalsh@ear.ie> wrote:
In the Csound repo there is a Custom.cmake.ex file. Open it and disable all the features you want. Then save that file as Custom.cmake Then run

mkdir build && cd build
cmake ..
make 
make install

btw, you can also run cmake-gui, open the Csound repo from it and you can easily set the build options through a user interface. It will configure cmake for you, but you will still need to run make from the build dir.  

On Mon, 5 Dec 2022 at 20:29, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Linux (Mint 21)

So, what file are you talking about? I need specifics. `CMakeLists.txt`?

I am more familiar with `./configure; make; make install` dances than I am with `cmake` and what goes into it, for starters.

On Mon, Dec 5, 2022 at 12:23 PM Rory Walsh <rorywalsh@ear.ie> wrote:
What platform are you trying to build for? I typically disable all options in a custom cmake file when I'm building. I can dig up one of my 'disable everything' custom cmake files for you tomorrow if you like. Btw, I think Victor might have recently made some changes so that even libsndfile isno longer needed.  

On Mon, 5 Dec 2022 at 19:12, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Reviving this old thread...

Victor: you said:
"""
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
"""

So, looking at the code, it's all over the place. I don't get a clean sense that one can, as suggested, simply remove references in `CMakeLists.txt` and not build a family of opcodes.

For starters, I've tried that, and I get compilation errors galore... :/

References to various helper functions needed in multiple places are all over in different files, some of which if I make invisible to `cmake` thinking that they simply define an unwanted opcode, it ends up destroying a low-level library reference that was thrown into the same file; opcode registry entries sometimes are found within the module that defines the opcode; sometimes in things like `entry1.c`. Csound is brilliant and does amazing things, but TBH, this codebase needs some love if it indeed promises to be modular in a user-friendly way.

It's really hard to wrap my head around where things live other than `ag` or `grep`, and then, I find there's no consistent rhyme or reason why things live where they do -- it all seems to be a product of a messy evolution.

That said, there may be an easy answer here. I'm just not seeing it yet.

Ultimately, I'd like to build a "diet" version and have good old fashioned `./configure --no-fft-opcodes --no-pvc-opcodes` style of disabling certain opcodes, if that makes sense. How do I do that, precisely) in the current `cmake` structure?

I think I need some hand-holding from an ace dev who knows the layout of this code top-to-bottom: OR -- simple instructions, step-by-step on how one might do this....the statement "It can be done" hasn't been helpful so far, as I've taken the time to try, a couple of hours at least, and it's fallen flat with no joy.

On Sun, Nov 7, 2021 at 11:19 AM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 6 Nov 2021, at 20:07, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
>
> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?
>
> I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.
>
> Aaron Krister Johnson
> http://www.untwelve.org
>
>
> On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
> Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.
>
> iain
>
> On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
> yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't.
>
> found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P
>
> On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
> Unfortunately I don't think this works in DOS proper, I tried it in
> dosemu (which did run the older v4 binary OK) and it reports
> This program cannot be run in DOS mode.
>
> On 2021-10-27 23:39, rasmus ekman wrote:
> > Here's one that reports as 6.08 (doubles), from 2016:
> > https://abc.se/~re/Stuff/Csound-DOS-608.zip
> >
> > I don't think I had fiddled with the code... - ah, just added the vosim
> > opcode
> >
> >
> > E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> > 0dBFS level = 32768.0
> > --Csound version 6.08 (double samples) Dec 29 2016
> > [commit: GIT_HASH_VALUE]
> > libsndfile-1.0.25
> > Usage:  csound [-flags] orchfile scorefile
> > Legal flags are:
> > ...
> >
> >
> > Regards,
> >
> >       /re
> >
> > Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> >> does anyone have this? i'm building an old fasttracker 2 box and it
> >> would be neat to have to make/modify samples in
> >> Csound mailing list Csound@listserv.heanet.ie
> >> <mailto:Csound@listserv.heanet.ie>
> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> >> https://github.com/csound/csound/issues Discussions of bugs and
> >> features can be posted here
> >
> > Csound mailing list
> > Csound@listserv.heanet.ie
> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> > Send bugs reports to
> >        https://github.com/csound/csound/issues
> > Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2022-12-05 23:33
FromVictor Lazzarini
SubjectRe: [Csnd] [EXTERNAL] Re: [Csnd] Going lean/mean/diet with Csound -- possible?
Well, that is a possibility. Maybe John can give you more details about this project.

Note also that Csound 7 is very much beta at the moment.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 5 Dec 2022, at 23:11, Aaron Krister Johnson <akjmicro@gmail.com> wrote:


On Mon, Dec 5, 2022 at 4:01 PM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
Maybe you misunderstood my comment. We removed almost all opcode libs with external dependencies from the main repo into the plugins repo. That is all we did, all other opcodes are still in the main repo. You can also configure the build to remove some elements in the build though cmake options.

John ffitch has worked on a version of Csound 7 that attempts to make custom builds of Csound with only selected opcodes. That is in the minimal7 branch and is described in his ICSC2022 paper.

And Rory is right to say that you can now build Csound (version 7, from the develop branch) with no dependencies at all. This opens the possibility of running Csound on bare metal, perhaps, if the standard C lib is present.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 5 Dec 2022, at 21:03, Aaron Krister Johnson <akjmicro@gmail.com> wrote:



*Warning*

This email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.

Although -- this still doesn't tell me how to disable various opcodes from being built....

These options in the file mentioned have nothing to do with choosing subsets of opcodes in a modular way.


On Mon, Dec 5, 2022 at 1:56 PM Aaron Krister Johnson <akjmicro@gmail.com> wrote:

On Mon, Dec 5, 2022 at 1:39 PM Rory Walsh <rorywalsh@ear.ie> wrote:
In the Csound repo there is a Custom.cmake.ex file. Open it and disable all the features you want. Then save that file as Custom.cmake Then run

mkdir build && cd build
cmake ..
make 
make install

btw, you can also run cmake-gui, open the Csound repo from it and you can easily set the build options through a user interface. It will configure cmake for you, but you will still need to run make from the build dir.  

On Mon, 5 Dec 2022 at 20:29, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Linux (Mint 21)

So, what file are you talking about? I need specifics. `CMakeLists.txt`?

I am more familiar with `./configure; make; make install` dances than I am with `cmake` and what goes into it, for starters.

On Mon, Dec 5, 2022 at 12:23 PM Rory Walsh <rorywalsh@ear.ie> wrote:
What platform are you trying to build for? I typically disable all options in a custom cmake file when I'm building. I can dig up one of my 'disable everything' custom cmake files for you tomorrow if you like. Btw, I think Victor might have recently made some changes so that even libsndfile isno longer needed.  

On Mon, 5 Dec 2022 at 19:12, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Reviving this old thread...

Victor: you said:
"""
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
"""

So, looking at the code, it's all over the place. I don't get a clean sense that one can, as suggested, simply remove references in `CMakeLists.txt` and not build a family of opcodes.

For starters, I've tried that, and I get compilation errors galore... :/

References to various helper functions needed in multiple places are all over in different files, some of which if I make invisible to `cmake` thinking that they simply define an unwanted opcode, it ends up destroying a low-level library reference that was thrown into the same file; opcode registry entries sometimes are found within the module that defines the opcode; sometimes in things like `entry1.c`. Csound is brilliant and does amazing things, but TBH, this codebase needs some love if it indeed promises to be modular in a user-friendly way.

It's really hard to wrap my head around where things live other than `ag` or `grep`, and then, I find there's no consistent rhyme or reason why things live where they do -- it all seems to be a product of a messy evolution.

That said, there may be an easy answer here. I'm just not seeing it yet.

Ultimately, I'd like to build a "diet" version and have good old fashioned `./configure --no-fft-opcodes --no-pvc-opcodes` style of disabling certain opcodes, if that makes sense. How do I do that, precisely) in the current `cmake` structure?

I think I need some hand-holding from an ace dev who knows the layout of this code top-to-bottom: OR -- simple instructions, step-by-step on how one might do this....the statement "It can be done" hasn't been helpful so far, as I've taken the time to try, a couple of hours at least, and it's fallen flat with no joy.

On Sun, Nov 7, 2021 at 11:19 AM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 6 Nov 2021, at 20:07, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
>
> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?
>
> I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.
>
> Aaron Krister Johnson
> http://www.untwelve.org
>
>
> On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
> Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.
>
> iain
>
> On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
> yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't.
>
> found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P
>
> On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
> Unfortunately I don't think this works in DOS proper, I tried it in
> dosemu (which did run the older v4 binary OK) and it reports
> This program cannot be run in DOS mode.
>
> On 2021-10-27 23:39, rasmus ekman wrote:
> > Here's one that reports as 6.08 (doubles), from 2016:
> > https://abc.se/~re/Stuff/Csound-DOS-608.zip
> >
> > I don't think I had fiddled with the code... - ah, just added the vosim
> > opcode
> >
> >
> > E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> > 0dBFS level = 32768.0
> > --Csound version 6.08 (double samples) Dec 29 2016
> > [commit: GIT_HASH_VALUE]
> > libsndfile-1.0.25
> > Usage:  csound [-flags] orchfile scorefile
> > Legal flags are:
> > ...
> >
> >
> > Regards,
> >
> >       /re
> >
> > Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> >> does anyone have this? i'm building an old fasttracker 2 box and it
> >> would be neat to have to make/modify samples in
> >> Csound mailing list Csound@listserv.heanet.ie
> >> <mailto:Csound@listserv.heanet.ie>
> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> >> https://github.com/csound/csound/issues Discussions of bugs and
> >> features can be posted here
> >
> > Csound mailing list
> > Csound@listserv.heanet.ie
> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> > Send bugs reports to
> >        https://github.com/csound/csound/issues
> > Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2022-12-06 00:11
FromAaron Krister Johnson
SubjectRe: [Csnd] [EXTERNAL] Re: [Csnd] Going lean/mean/diet with Csound -- possible?
Victor:

I had a look at the gihub compare diff. Looks like what John was doing makes sense: #ifdef and #endif macros to wrap opcode-related definitions. It looks controlled from a header file -- so I take to that to disable an opcode from being built, one puts
either `//` in front of it, or for a block, `/* ... */` ???

Or, is this controllable from the build process with definition statements? (I actually think the former is straightforward and easier if one disables a huge amount of them).

Csound is feeling almost "too large" for me at the moment, and I'm thinking that if I cannot trim it down in a user-friendly way, I need to start using other options available to me. I know that's a person thing, but I don't like how "everything AND the kitchen sink" is thrown in there. :D

Thanks for your help in this.


On Mon, Dec 5, 2022 at 4:34 PM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
Well, that is a possibility. Maybe John can give you more details about this project.

Note also that Csound 7 is very much beta at the moment.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 5 Dec 2022, at 23:11, Aaron Krister Johnson <akjmicro@gmail.com> wrote:


On Mon, Dec 5, 2022 at 4:01 PM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
Maybe you misunderstood my comment. We removed almost all opcode libs with external dependencies from the main repo into the plugins repo. That is all we did, all other opcodes are still in the main repo. You can also configure the build to remove some elements in the build though cmake options.

John ffitch has worked on a version of Csound 7 that attempts to make custom builds of Csound with only selected opcodes. That is in the minimal7 branch and is described in his ICSC2022 paper.

And Rory is right to say that you can now build Csound (version 7, from the develop branch) with no dependencies at all. This opens the possibility of running Csound on bare metal, perhaps, if the standard C lib is present.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 5 Dec 2022, at 21:03, Aaron Krister Johnson <akjmicro@gmail.com> wrote:



*Warning*

This email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.

Although -- this still doesn't tell me how to disable various opcodes from being built....

These options in the file mentioned have nothing to do with choosing subsets of opcodes in a modular way.


On Mon, Dec 5, 2022 at 1:56 PM Aaron Krister Johnson <akjmicro@gmail.com> wrote:

On Mon, Dec 5, 2022 at 1:39 PM Rory Walsh <rorywalsh@ear.ie> wrote:
In the Csound repo there is a Custom.cmake.ex file. Open it and disable all the features you want. Then save that file as Custom.cmake Then run

mkdir build && cd build
cmake ..
make 
make install

btw, you can also run cmake-gui, open the Csound repo from it and you can easily set the build options through a user interface. It will configure cmake for you, but you will still need to run make from the build dir.  

On Mon, 5 Dec 2022 at 20:29, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Linux (Mint 21)

So, what file are you talking about? I need specifics. `CMakeLists.txt`?

I am more familiar with `./configure; make; make install` dances than I am with `cmake` and what goes into it, for starters.

On Mon, Dec 5, 2022 at 12:23 PM Rory Walsh <rorywalsh@ear.ie> wrote:
What platform are you trying to build for? I typically disable all options in a custom cmake file when I'm building. I can dig up one of my 'disable everything' custom cmake files for you tomorrow if you like. Btw, I think Victor might have recently made some changes so that even libsndfile isno longer needed.  

On Mon, 5 Dec 2022 at 19:12, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Reviving this old thread...

Victor: you said:
"""
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
"""

So, looking at the code, it's all over the place. I don't get a clean sense that one can, as suggested, simply remove references in `CMakeLists.txt` and not build a family of opcodes.

For starters, I've tried that, and I get compilation errors galore... :/

References to various helper functions needed in multiple places are all over in different files, some of which if I make invisible to `cmake` thinking that they simply define an unwanted opcode, it ends up destroying a low-level library reference that was thrown into the same file; opcode registry entries sometimes are found within the module that defines the opcode; sometimes in things like `entry1.c`. Csound is brilliant and does amazing things, but TBH, this codebase needs some love if it indeed promises to be modular in a user-friendly way.

It's really hard to wrap my head around where things live other than `ag` or `grep`, and then, I find there's no consistent rhyme or reason why things live where they do -- it all seems to be a product of a messy evolution.

That said, there may be an easy answer here. I'm just not seeing it yet.

Ultimately, I'd like to build a "diet" version and have good old fashioned `./configure --no-fft-opcodes --no-pvc-opcodes` style of disabling certain opcodes, if that makes sense. How do I do that, precisely) in the current `cmake` structure?

I think I need some hand-holding from an ace dev who knows the layout of this code top-to-bottom: OR -- simple instructions, step-by-step on how one might do this....the statement "It can be done" hasn't been helpful so far, as I've taken the time to try, a couple of hours at least, and it's fallen flat with no joy.

On Sun, Nov 7, 2021 at 11:19 AM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 6 Nov 2021, at 20:07, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
>
> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?
>
> I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.
>
> Aaron Krister Johnson
> http://www.untwelve.org
>
>
> On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
> Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.
>
> iain
>
> On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
> yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't.
>
> found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P
>
> On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
> Unfortunately I don't think this works in DOS proper, I tried it in
> dosemu (which did run the older v4 binary OK) and it reports
> This program cannot be run in DOS mode.
>
> On 2021-10-27 23:39, rasmus ekman wrote:
> > Here's one that reports as 6.08 (doubles), from 2016:
> > https://abc.se/~re/Stuff/Csound-DOS-608.zip
> >
> > I don't think I had fiddled with the code... - ah, just added the vosim
> > opcode
> >
> >
> > E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> > 0dBFS level = 32768.0
> > --Csound version 6.08 (double samples) Dec 29 2016
> > [commit: GIT_HASH_VALUE]
> > libsndfile-1.0.25
> > Usage:  csound [-flags] orchfile scorefile
> > Legal flags are:
> > ...
> >
> >
> > Regards,
> >
> >       /re
> >
> > Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> >> does anyone have this? i'm building an old fasttracker 2 box and it
> >> would be neat to have to make/modify samples in
> >> Csound mailing list Csound@listserv.heanet.ie
> >> <mailto:Csound@listserv.heanet.ie>
> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> >> https://github.com/csound/csound/issues Discussions of bugs and
> >> features can be posted here
> >
> > Csound mailing list
> > Csound@listserv.heanet.ie
> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> > Send bugs reports to
> >        https://github.com/csound/csound/issues
> > Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2022-12-06 00:55
From"Dr. Richard Boulanger"
SubjectRe: [Csnd] [EXTERNAL] Re: [Csnd] Going lean/mean/diet with Csound -- possible?
Aaron,

Check out the paper - John has a utility that does the work for you/us.
And, John would love to discuss his approach with you too,

- Dr.B


Dr. Richard Boulanger

Professor

Electronic Production and Design

Berklee College of Music

Professional Writing & Technology Division



On Mon, Dec 5, 2022 at 7:13 PM Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Victor:

I had a look at the gihub compare diff. Looks like what John was doing makes sense: #ifdef and #endif macros to wrap opcode-related definitions. It looks controlled from a header file -- so I take to that to disable an opcode from being built, one puts
either `//` in front of it, or for a block, `/* ... */` ???

Or, is this controllable from the build process with definition statements? (I actually think the former is straightforward and easier if one disables a huge amount of them).

Csound is feeling almost "too large" for me at the moment, and I'm thinking that if I cannot trim it down in a user-friendly way, I need to start using other options available to me. I know that's a person thing, but I don't like how "everything AND the kitchen sink" is thrown in there. :D

Thanks for your help in this.


On Mon, Dec 5, 2022 at 4:34 PM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
Well, that is a possibility. Maybe John can give you more details about this project.

Note also that Csound 7 is very much beta at the moment.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 5 Dec 2022, at 23:11, Aaron Krister Johnson <akjmicro@gmail.com> wrote:


On Mon, Dec 5, 2022 at 4:01 PM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
Maybe you misunderstood my comment. We removed almost all opcode libs with external dependencies from the main repo into the plugins repo. That is all we did, all other opcodes are still in the main repo. You can also configure the build to remove some elements in the build though cmake options.

John ffitch has worked on a version of Csound 7 that attempts to make custom builds of Csound with only selected opcodes. That is in the minimal7 branch and is described in his ICSC2022 paper.

And Rory is right to say that you can now build Csound (version 7, from the develop branch) with no dependencies at all. This opens the possibility of running Csound on bare metal, perhaps, if the standard C lib is present.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 5 Dec 2022, at 21:03, Aaron Krister Johnson <akjmicro@gmail.com> wrote:



*Warning*

This email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.

Although -- this still doesn't tell me how to disable various opcodes from being built....

These options in the file mentioned have nothing to do with choosing subsets of opcodes in a modular way.


On Mon, Dec 5, 2022 at 1:56 PM Aaron Krister Johnson <akjmicro@gmail.com> wrote:

On Mon, Dec 5, 2022 at 1:39 PM Rory Walsh <rorywalsh@ear.ie> wrote:
In the Csound repo there is a Custom.cmake.ex file. Open it and disable all the features you want. Then save that file as Custom.cmake Then run

mkdir build && cd build
cmake ..
make 
make install

btw, you can also run cmake-gui, open the Csound repo from it and you can easily set the build options through a user interface. It will configure cmake for you, but you will still need to run make from the build dir.  

On Mon, 5 Dec 2022 at 20:29, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Linux (Mint 21)

So, what file are you talking about? I need specifics. `CMakeLists.txt`?

I am more familiar with `./configure; make; make install` dances than I am with `cmake` and what goes into it, for starters.

On Mon, Dec 5, 2022 at 12:23 PM Rory Walsh <rorywalsh@ear.ie> wrote:
What platform are you trying to build for? I typically disable all options in a custom cmake file when I'm building. I can dig up one of my 'disable everything' custom cmake files for you tomorrow if you like. Btw, I think Victor might have recently made some changes so that even libsndfile isno longer needed.  

On Mon, 5 Dec 2022 at 19:12, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Reviving this old thread...

Victor: you said:
"""
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
"""

So, looking at the code, it's all over the place. I don't get a clean sense that one can, as suggested, simply remove references in `CMakeLists.txt` and not build a family of opcodes.

For starters, I've tried that, and I get compilation errors galore... :/

References to various helper functions needed in multiple places are all over in different files, some of which if I make invisible to `cmake` thinking that they simply define an unwanted opcode, it ends up destroying a low-level library reference that was thrown into the same file; opcode registry entries sometimes are found within the module that defines the opcode; sometimes in things like `entry1.c`. Csound is brilliant and does amazing things, but TBH, this codebase needs some love if it indeed promises to be modular in a user-friendly way.

It's really hard to wrap my head around where things live other than `ag` or `grep`, and then, I find there's no consistent rhyme or reason why things live where they do -- it all seems to be a product of a messy evolution.

That said, there may be an easy answer here. I'm just not seeing it yet.

Ultimately, I'd like to build a "diet" version and have good old fashioned `./configure --no-fft-opcodes --no-pvc-opcodes` style of disabling certain opcodes, if that makes sense. How do I do that, precisely) in the current `cmake` structure?

I think I need some hand-holding from an ace dev who knows the layout of this code top-to-bottom: OR -- simple instructions, step-by-step on how one might do this....the statement "It can be done" hasn't been helpful so far, as I've taken the time to try, a couple of hours at least, and it's fallen flat with no joy.

On Sun, Nov 7, 2021 at 11:19 AM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 6 Nov 2021, at 20:07, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
>
> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?
>
> I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.
>
> Aaron Krister Johnson
> http://www.untwelve.org
>
>
> On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
> Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.
>
> iain
>
> On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
> yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't.
>
> found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P
>
> On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
> Unfortunately I don't think this works in DOS proper, I tried it in
> dosemu (which did run the older v4 binary OK) and it reports
> This program cannot be run in DOS mode.
>
> On 2021-10-27 23:39, rasmus ekman wrote:
> > Here's one that reports as 6.08 (doubles), from 2016:
> > https://abc.se/~re/Stuff/Csound-DOS-608.zip
> >
> > I don't think I had fiddled with the code... - ah, just added the vosim
> > opcode
> >
> >
> > E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> > 0dBFS level = 32768.0
> > --Csound version 6.08 (double samples) Dec 29 2016
> > [commit: GIT_HASH_VALUE]
> > libsndfile-1.0.25
> > Usage:  csound [-flags] orchfile scorefile
> > Legal flags are:
> > ...
> >
> >
> > Regards,
> >
> >       /re
> >
> > Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> >> does anyone have this? i'm building an old fasttracker 2 box and it
> >> would be neat to have to make/modify samples in
> >> Csound mailing list Csound@listserv.heanet.ie
> >> <mailto:Csound@listserv.heanet.ie>
> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> >> https://github.com/csound/csound/issues Discussions of bugs and
> >> features can be posted here
> >
> > Csound mailing list
> > Csound@listserv.heanet.ie
> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> > Send bugs reports to
> >        https://github.com/csound/csound/issues
> > Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2022-12-06 09:31
FromRory Walsh
SubjectRe: [Csnd] [EXTERNAL] Re: [Csnd] Going lean/mean/diet with Csound -- possible?
Hi Aaron, by thrashing I simply mean deleting the opcodes you don't need. You can safely remove the entire opcodes6dir64 directory if you have no need for the opcoes contained within. 

On Tue, 6 Dec 2022 at 00:57, Dr. Richard Boulanger <rboulanger@berklee.edu> wrote:
Aaron,

Check out the paper - John has a utility that does the work for you/us.
And, John would love to discuss his approach with you too,

- Dr.B


Dr. Richard Boulanger

Professor

Electronic Production and Design

Berklee College of Music

Professional Writing & Technology Division



On Mon, Dec 5, 2022 at 7:13 PM Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Victor:

I had a look at the gihub compare diff. Looks like what John was doing makes sense: #ifdef and #endif macros to wrap opcode-related definitions. It looks controlled from a header file -- so I take to that to disable an opcode from being built, one puts
either `//` in front of it, or for a block, `/* ... */` ???

Or, is this controllable from the build process with definition statements? (I actually think the former is straightforward and easier if one disables a huge amount of them).

Csound is feeling almost "too large" for me at the moment, and I'm thinking that if I cannot trim it down in a user-friendly way, I need to start using other options available to me. I know that's a person thing, but I don't like how "everything AND the kitchen sink" is thrown in there. :D

Thanks for your help in this.


On Mon, Dec 5, 2022 at 4:34 PM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
Well, that is a possibility. Maybe John can give you more details about this project.

Note also that Csound 7 is very much beta at the moment.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 5 Dec 2022, at 23:11, Aaron Krister Johnson <akjmicro@gmail.com> wrote:


On Mon, Dec 5, 2022 at 4:01 PM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
Maybe you misunderstood my comment. We removed almost all opcode libs with external dependencies from the main repo into the plugins repo. That is all we did, all other opcodes are still in the main repo. You can also configure the build to remove some elements in the build though cmake options.

John ffitch has worked on a version of Csound 7 that attempts to make custom builds of Csound with only selected opcodes. That is in the minimal7 branch and is described in his ICSC2022 paper.

And Rory is right to say that you can now build Csound (version 7, from the develop branch) with no dependencies at all. This opens the possibility of running Csound on bare metal, perhaps, if the standard C lib is present.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 5 Dec 2022, at 21:03, Aaron Krister Johnson <akjmicro@gmail.com> wrote:



*Warning*

This email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.

Although -- this still doesn't tell me how to disable various opcodes from being built....

These options in the file mentioned have nothing to do with choosing subsets of opcodes in a modular way.


On Mon, Dec 5, 2022 at 1:56 PM Aaron Krister Johnson <akjmicro@gmail.com> wrote:

On Mon, Dec 5, 2022 at 1:39 PM Rory Walsh <rorywalsh@ear.ie> wrote:
In the Csound repo there is a Custom.cmake.ex file. Open it and disable all the features you want. Then save that file as Custom.cmake Then run

mkdir build && cd build
cmake ..
make 
make install

btw, you can also run cmake-gui, open the Csound repo from it and you can easily set the build options through a user interface. It will configure cmake for you, but you will still need to run make from the build dir.  

On Mon, 5 Dec 2022 at 20:29, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Linux (Mint 21)

So, what file are you talking about? I need specifics. `CMakeLists.txt`?

I am more familiar with `./configure; make; make install` dances than I am with `cmake` and what goes into it, for starters.

On Mon, Dec 5, 2022 at 12:23 PM Rory Walsh <rorywalsh@ear.ie> wrote:
What platform are you trying to build for? I typically disable all options in a custom cmake file when I'm building. I can dig up one of my 'disable everything' custom cmake files for you tomorrow if you like. Btw, I think Victor might have recently made some changes so that even libsndfile isno longer needed.  

On Mon, 5 Dec 2022 at 19:12, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Reviving this old thread...

Victor: you said:
"""
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
"""

So, looking at the code, it's all over the place. I don't get a clean sense that one can, as suggested, simply remove references in `CMakeLists.txt` and not build a family of opcodes.

For starters, I've tried that, and I get compilation errors galore... :/

References to various helper functions needed in multiple places are all over in different files, some of which if I make invisible to `cmake` thinking that they simply define an unwanted opcode, it ends up destroying a low-level library reference that was thrown into the same file; opcode registry entries sometimes are found within the module that defines the opcode; sometimes in things like `entry1.c`. Csound is brilliant and does amazing things, but TBH, this codebase needs some love if it indeed promises to be modular in a user-friendly way.

It's really hard to wrap my head around where things live other than `ag` or `grep`, and then, I find there's no consistent rhyme or reason why things live where they do -- it all seems to be a product of a messy evolution.

That said, there may be an easy answer here. I'm just not seeing it yet.

Ultimately, I'd like to build a "diet" version and have good old fashioned `./configure --no-fft-opcodes --no-pvc-opcodes` style of disabling certain opcodes, if that makes sense. How do I do that, precisely) in the current `cmake` structure?

I think I need some hand-holding from an ace dev who knows the layout of this code top-to-bottom: OR -- simple instructions, step-by-step on how one might do this....the statement "It can be done" hasn't been helpful so far, as I've taken the time to try, a couple of hours at least, and it's fallen flat with no joy.

On Sun, Nov 7, 2021 at 11:19 AM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 6 Nov 2021, at 20:07, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
>
> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?
>
> I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.
>
> Aaron Krister Johnson
> http://www.untwelve.org
>
>
> On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
> Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.
>
> iain
>
> On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
> yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't.
>
> found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P
>
> On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
> Unfortunately I don't think this works in DOS proper, I tried it in
> dosemu (which did run the older v4 binary OK) and it reports
> This program cannot be run in DOS mode.
>
> On 2021-10-27 23:39, rasmus ekman wrote:
> > Here's one that reports as 6.08 (doubles), from 2016:
> > https://abc.se/~re/Stuff/Csound-DOS-608.zip
> >
> > I don't think I had fiddled with the code... - ah, just added the vosim
> > opcode
> >
> >
> > E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> > 0dBFS level = 32768.0
> > --Csound version 6.08 (double samples) Dec 29 2016
> > [commit: GIT_HASH_VALUE]
> > libsndfile-1.0.25
> > Usage:  csound [-flags] orchfile scorefile
> > Legal flags are:
> > ...
> >
> >
> > Regards,
> >
> >       /re
> >
> > Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> >> does anyone have this? i'm building an old fasttracker 2 box and it
> >> would be neat to have to make/modify samples in
> >> Csound mailing list Csound@listserv.heanet.ie
> >> <mailto:Csound@listserv.heanet.ie>
> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> >> https://github.com/csound/csound/issues Discussions of bugs and
> >> features can be posted here
> >
> > Csound mailing list
> > Csound@listserv.heanet.ie
> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> > Send bugs reports to
> >        https://github.com/csound/csound/issues
> > Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2022-12-06 14:52
FromAaron Krister Johnson
SubjectRe: [Csnd] [EXTERNAL] Re: [Csnd] Going lean/mean/diet with Csound -- possible?
Rory - Thanks, I'll give it a try. Has this been verified?

Dr. B., and John ffitch -- read the paper. It was well-laid out and clear. Appreciate the tip (and the effort, John, to push Csound in this direction).

I still owe Steven and/or others a working example of `zak` opcodes not working. Sorry, will try to get one tonight. In the meantime, I'll probably migrate away from them anyhow in favor of old-skool globals and/or `chn[get|set]`.

Thanks,


On Tue, Dec 6, 2022 at 2:32 AM Rory Walsh <rorywalsh@ear.ie> wrote:
Hi Aaron, by thrashing I simply mean deleting the opcodes you don't need. You can safely remove the entire opcodes6dir64 directory if you have no need for the opcoes contained within. 

On Tue, 6 Dec 2022 at 00:57, Dr. Richard Boulanger <rboulanger@berklee.edu> wrote:
Aaron,

Check out the paper - John has a utility that does the work for you/us.
And, John would love to discuss his approach with you too,

- Dr.B


Dr. Richard Boulanger

Professor

Electronic Production and Design

Berklee College of Music

Professional Writing & Technology Division



On Mon, Dec 5, 2022 at 7:13 PM Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Victor:

I had a look at the gihub compare diff. Looks like what John was doing makes sense: #ifdef and #endif macros to wrap opcode-related definitions. It looks controlled from a header file -- so I take to that to disable an opcode from being built, one puts
either `//` in front of it, or for a block, `/* ... */` ???

Or, is this controllable from the build process with definition statements? (I actually think the former is straightforward and easier if one disables a huge amount of them).

Csound is feeling almost "too large" for me at the moment, and I'm thinking that if I cannot trim it down in a user-friendly way, I need to start using other options available to me. I know that's a person thing, but I don't like how "everything AND the kitchen sink" is thrown in there. :D

Thanks for your help in this.


On Mon, Dec 5, 2022 at 4:34 PM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
Well, that is a possibility. Maybe John can give you more details about this project.

Note also that Csound 7 is very much beta at the moment.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 5 Dec 2022, at 23:11, Aaron Krister Johnson <akjmicro@gmail.com> wrote:


On Mon, Dec 5, 2022 at 4:01 PM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
Maybe you misunderstood my comment. We removed almost all opcode libs with external dependencies from the main repo into the plugins repo. That is all we did, all other opcodes are still in the main repo. You can also configure the build to remove some elements in the build though cmake options.

John ffitch has worked on a version of Csound 7 that attempts to make custom builds of Csound with only selected opcodes. That is in the minimal7 branch and is described in his ICSC2022 paper.

And Rory is right to say that you can now build Csound (version 7, from the develop branch) with no dependencies at all. This opens the possibility of running Csound on bare metal, perhaps, if the standard C lib is present.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 5 Dec 2022, at 21:03, Aaron Krister Johnson <akjmicro@gmail.com> wrote:



*Warning*

This email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.

Although -- this still doesn't tell me how to disable various opcodes from being built....

These options in the file mentioned have nothing to do with choosing subsets of opcodes in a modular way.


On Mon, Dec 5, 2022 at 1:56 PM Aaron Krister Johnson <akjmicro@gmail.com> wrote:

On Mon, Dec 5, 2022 at 1:39 PM Rory Walsh <rorywalsh@ear.ie> wrote:
In the Csound repo there is a Custom.cmake.ex file. Open it and disable all the features you want. Then save that file as Custom.cmake Then run

mkdir build && cd build
cmake ..
make 
make install

btw, you can also run cmake-gui, open the Csound repo from it and you can easily set the build options through a user interface. It will configure cmake for you, but you will still need to run make from the build dir.  

On Mon, 5 Dec 2022 at 20:29, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Linux (Mint 21)

So, what file are you talking about? I need specifics. `CMakeLists.txt`?

I am more familiar with `./configure; make; make install` dances than I am with `cmake` and what goes into it, for starters.

On Mon, Dec 5, 2022 at 12:23 PM Rory Walsh <rorywalsh@ear.ie> wrote:
What platform are you trying to build for? I typically disable all options in a custom cmake file when I'm building. I can dig up one of my 'disable everything' custom cmake files for you tomorrow if you like. Btw, I think Victor might have recently made some changes so that even libsndfile isno longer needed.  

On Mon, 5 Dec 2022 at 19:12, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Reviving this old thread...

Victor: you said:
"""
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
"""

So, looking at the code, it's all over the place. I don't get a clean sense that one can, as suggested, simply remove references in `CMakeLists.txt` and not build a family of opcodes.

For starters, I've tried that, and I get compilation errors galore... :/

References to various helper functions needed in multiple places are all over in different files, some of which if I make invisible to `cmake` thinking that they simply define an unwanted opcode, it ends up destroying a low-level library reference that was thrown into the same file; opcode registry entries sometimes are found within the module that defines the opcode; sometimes in things like `entry1.c`. Csound is brilliant and does amazing things, but TBH, this codebase needs some love if it indeed promises to be modular in a user-friendly way.

It's really hard to wrap my head around where things live other than `ag` or `grep`, and then, I find there's no consistent rhyme or reason why things live where they do -- it all seems to be a product of a messy evolution.

That said, there may be an easy answer here. I'm just not seeing it yet.

Ultimately, I'd like to build a "diet" version and have good old fashioned `./configure --no-fft-opcodes --no-pvc-opcodes` style of disabling certain opcodes, if that makes sense. How do I do that, precisely) in the current `cmake` structure?

I think I need some hand-holding from an ace dev who knows the layout of this code top-to-bottom: OR -- simple instructions, step-by-step on how one might do this....the statement "It can be done" hasn't been helpful so far, as I've taken the time to try, a couple of hours at least, and it's fallen flat with no joy.

On Sun, Nov 7, 2021 at 11:19 AM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 6 Nov 2021, at 20:07, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
>
> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?
>
> I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.
>
> Aaron Krister Johnson
> http://www.untwelve.org
>
>
> On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
> Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.
>
> iain
>
> On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
> yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't.
>
> found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P
>
> On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
> Unfortunately I don't think this works in DOS proper, I tried it in
> dosemu (which did run the older v4 binary OK) and it reports
> This program cannot be run in DOS mode.
>
> On 2021-10-27 23:39, rasmus ekman wrote:
> > Here's one that reports as 6.08 (doubles), from 2016:
> > https://abc.se/~re/Stuff/Csound-DOS-608.zip
> >
> > I don't think I had fiddled with the code... - ah, just added the vosim
> > opcode
> >
> >
> > E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> > 0dBFS level = 32768.0
> > --Csound version 6.08 (double samples) Dec 29 2016
> > [commit: GIT_HASH_VALUE]
> > libsndfile-1.0.25
> > Usage:  csound [-flags] orchfile scorefile
> > Legal flags are:
> > ...
> >
> >
> > Regards,
> >
> >       /re
> >
> > Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> >> does anyone have this? i'm building an old fasttracker 2 box and it
> >> would be neat to have to make/modify samples in
> >> Csound mailing list Csound@listserv.heanet.ie
> >> <mailto:Csound@listserv.heanet.ie>
> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> >> https://github.com/csound/csound/issues Discussions of bugs and
> >> features can be posted here
> >
> > Csound mailing list
> > Csound@listserv.heanet.ie
> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> > Send bugs reports to
> >        https://github.com/csound/csound/issues
> > Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2022-12-06 15:39
FromRory Walsh
SubjectRe: [Csnd] [EXTERNAL] Re: [Csnd] Going lean/mean/diet with Csound -- possible?
Rory - Thanks, I'll give it a try. Has this been verified?

Just nuke your OPCODE6DIR64 env var and see for yourself. All the opcodes in that directory are plugins. 
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2022-12-06 17:45
FromArthur Hunkins <000001e1d761dea2-dmarc-request@LISTSERV.HEANET.IE>
SubjectRe: [Csnd] [EXTERNAL] Re: [Csnd] Going lean/mean/diet with Csound -- possible?
I've been enjoying this thread for some time now. (The idea of a Minimal Csound is dear to my heart.) Perhaps the following is relevant here.

Two years ago I undertook (and presented to this list) a Windows project:
CSOUND TO GO:
A Minimal Windows Csound on a Stick (2020)
It can be accessed at: http://arthunkins.com/articles.htm (the second item). The article demonstrates how to create your own 6MB Windows 6.15 version of Csound on a USB drive. Currently I do all of my Csound work on such a drive.
One advantage is that *any* average user (like me) can do the same without special knowledge. I assume something similar might apply to other systems


On Tue, Dec 6, 2022 at 9:53 AM Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Rory - Thanks, I'll give it a try. Has this been verified?

Dr. B., and John ffitch -- read the paper. It was well-laid out and clear. Appreciate the tip (and the effort, John, to push Csound in this direction).

I still owe Steven and/or others a working example of `zak` opcodes not working. Sorry, will try to get one tonight. In the meantime, I'll probably migrate away from them anyhow in favor of old-skool globals and/or `chn[get|set]`.

Thanks,


On Tue, Dec 6, 2022 at 2:32 AM Rory Walsh <rorywalsh@ear.ie> wrote:
Hi Aaron, by thrashing I simply mean deleting the opcodes you don't need. You can safely remove the entire opcodes6dir64 directory if you have no need for the opcoes contained within. 

On Tue, 6 Dec 2022 at 00:57, Dr. Richard Boulanger <rboulanger@berklee.edu> wrote:
Aaron,

Check out the paper - John has a utility that does the work for you/us.
And, John would love to discuss his approach with you too,

- Dr.B


Dr. Richard Boulanger

Professor

Electronic Production and Design

Berklee College of Music

Professional Writing & Technology Division



On Mon, Dec 5, 2022 at 7:13 PM Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Victor:

I had a look at the gihub compare diff. Looks like what John was doing makes sense: #ifdef and #endif macros to wrap opcode-related definitions. It looks controlled from a header file -- so I take to that to disable an opcode from being built, one puts
either `//` in front of it, or for a block, `/* ... */` ???

Or, is this controllable from the build process with definition statements? (I actually think the former is straightforward and easier if one disables a huge amount of them).

Csound is feeling almost "too large" for me at the moment, and I'm thinking that if I cannot trim it down in a user-friendly way, I need to start using other options available to me. I know that's a person thing, but I don't like how "everything AND the kitchen sink" is thrown in there. :D

Thanks for your help in this.


On Mon, Dec 5, 2022 at 4:34 PM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
Well, that is a possibility. Maybe John can give you more details about this project.

Note also that Csound 7 is very much beta at the moment.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 5 Dec 2022, at 23:11, Aaron Krister Johnson <akjmicro@gmail.com> wrote:


On Mon, Dec 5, 2022 at 4:01 PM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
Maybe you misunderstood my comment. We removed almost all opcode libs with external dependencies from the main repo into the plugins repo. That is all we did, all other opcodes are still in the main repo. You can also configure the build to remove some elements in the build though cmake options.

John ffitch has worked on a version of Csound 7 that attempts to make custom builds of Csound with only selected opcodes. That is in the minimal7 branch and is described in his ICSC2022 paper.

And Rory is right to say that you can now build Csound (version 7, from the develop branch) with no dependencies at all. This opens the possibility of running Csound on bare metal, perhaps, if the standard C lib is present.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 5 Dec 2022, at 21:03, Aaron Krister Johnson <akjmicro@gmail.com> wrote:



*Warning*

This email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.

Although -- this still doesn't tell me how to disable various opcodes from being built....

These options in the file mentioned have nothing to do with choosing subsets of opcodes in a modular way.


On Mon, Dec 5, 2022 at 1:56 PM Aaron Krister Johnson <akjmicro@gmail.com> wrote:

On Mon, Dec 5, 2022 at 1:39 PM Rory Walsh <rorywalsh@ear.ie> wrote:
In the Csound repo there is a Custom.cmake.ex file. Open it and disable all the features you want. Then save that file as Custom.cmake Then run

mkdir build && cd build
cmake ..
make 
make install

btw, you can also run cmake-gui, open the Csound repo from it and you can easily set the build options through a user interface. It will configure cmake for you, but you will still need to run make from the build dir.  

On Mon, 5 Dec 2022 at 20:29, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Linux (Mint 21)

So, what file are you talking about? I need specifics. `CMakeLists.txt`?

I am more familiar with `./configure; make; make install` dances than I am with `cmake` and what goes into it, for starters.

On Mon, Dec 5, 2022 at 12:23 PM Rory Walsh <rorywalsh@ear.ie> wrote:
What platform are you trying to build for? I typically disable all options in a custom cmake file when I'm building. I can dig up one of my 'disable everything' custom cmake files for you tomorrow if you like. Btw, I think Victor might have recently made some changes so that even libsndfile isno longer needed.  

On Mon, 5 Dec 2022 at 19:12, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
Reviving this old thread...

Victor: you said:
"""
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
"""

So, looking at the code, it's all over the place. I don't get a clean sense that one can, as suggested, simply remove references in `CMakeLists.txt` and not build a family of opcodes.

For starters, I've tried that, and I get compilation errors galore... :/

References to various helper functions needed in multiple places are all over in different files, some of which if I make invisible to `cmake` thinking that they simply define an unwanted opcode, it ends up destroying a low-level library reference that was thrown into the same file; opcode registry entries sometimes are found within the module that defines the opcode; sometimes in things like `entry1.c`. Csound is brilliant and does amazing things, but TBH, this codebase needs some love if it indeed promises to be modular in a user-friendly way.

It's really hard to wrap my head around where things live other than `ag` or `grep`, and then, I find there's no consistent rhyme or reason why things live where they do -- it all seems to be a product of a messy evolution.

That said, there may be an easy answer here. I'm just not seeing it yet.

Ultimately, I'd like to build a "diet" version and have good old fashioned `./configure --no-fft-opcodes --no-pvc-opcodes` style of disabling certain opcodes, if that makes sense. How do I do that, precisely) in the current `cmake` structure?

I think I need some hand-holding from an ace dev who knows the layout of this code top-to-bottom: OR -- simple instructions, step-by-step on how one might do this....the statement "It can be done" hasn't been helpful so far, as I've taken the time to try, a couple of hours at least, and it's fallen flat with no joy.

On Sun, Nov 7, 2021 at 11:19 AM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 6 Nov 2021, at 20:07, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
>
> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?
>
> I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.
>
> Aaron Krister Johnson
> http://www.untwelve.org
>
>
> On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
> Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.
>
> iain
>
> On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
> yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't.
>
> found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P
>
> On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
> Unfortunately I don't think this works in DOS proper, I tried it in
> dosemu (which did run the older v4 binary OK) and it reports
> This program cannot be run in DOS mode.
>
> On 2021-10-27 23:39, rasmus ekman wrote:
> > Here's one that reports as 6.08 (doubles), from 2016:
> > https://abc.se/~re/Stuff/Csound-DOS-608.zip
> >
> > I don't think I had fiddled with the code... - ah, just added the vosim
> > opcode
> >
> >
> > E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> > 0dBFS level = 32768.0
> > --Csound version 6.08 (double samples) Dec 29 2016
> > [commit: GIT_HASH_VALUE]
> > libsndfile-1.0.25
> > Usage:  csound [-flags] orchfile scorefile
> > Legal flags are:
> > ...
> >
> >
> > Regards,
> >
> >       /re
> >
> > Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> >> does anyone have this? i'm building an old fasttracker 2 box and it
> >> would be neat to have to make/modify samples in
> >> Csound mailing list Csound@listserv.heanet.ie
> >> <mailto:Csound@listserv.heanet.ie>
> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> >> https://github.com/csound/csound/issues Discussions of bugs and
> >> features can be posted here
> >
> > Csound mailing list
> > Csound@listserv.heanet.ie
> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> > Send bugs reports to
> >        https://github.com/csound/csound/issues
> > Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2022-12-07 07:53
FromJosh Moore
SubjectRe: [Csnd] Going lean/mean/diet with Csound -- possible?
If you mean nothing but gen routines, oscil, adsr i agree somewhat and kind of want to do it as a both learning exercise and because i want my own functionality like calling the lib and writing nested csds in strings written to function tables for instance which doing that would be required but there is much noise with 7 

Sent from my iPad

On Dec 5, 2022, at 11:12 AM, Aaron Krister Johnson <akjmicro@gmail.com> wrote:


Reviving this old thread...

Victor: you said:
"""
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
"""

So, looking at the code, it's all over the place. I don't get a clean sense that one can, as suggested, simply remove references in `CMakeLists.txt` and not build a family of opcodes.

For starters, I've tried that, and I get compilation errors galore... :/

References to various helper functions needed in multiple places are all over in different files, some of which if I make invisible to `cmake` thinking that they simply define an unwanted opcode, it ends up destroying a low-level library reference that was thrown into the same file; opcode registry entries sometimes are found within the module that defines the opcode; sometimes in things like `entry1.c`. Csound is brilliant and does amazing things, but TBH, this codebase needs some love if it indeed promises to be modular in a user-friendly way.

It's really hard to wrap my head around where things live other than `ag` or `grep`, and then, I find there's no consistent rhyme or reason why things live where they do -- it all seems to be a product of a messy evolution.

That said, there may be an easy answer here. I'm just not seeing it yet.

Ultimately, I'd like to build a "diet" version and have good old fashioned `./configure --no-fft-opcodes --no-pvc-opcodes` style of disabling certain opcodes, if that makes sense. How do I do that, precisely) in the current `cmake` structure?

I think I need some hand-holding from an ace dev who knows the layout of this code top-to-bottom: OR -- simple instructions, step-by-step on how one might do this....the statement "It can be done" hasn't been helpful so far, as I've taken the time to try, a couple of hours at least, and it's fallen flat with no joy.

On Sun, Nov 7, 2021 at 11:19 AM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
At the moment, the only dependency needed for Csound is libsndfile. With it, you can build a Csound version
which is fairly lean and small. Most plugins have been moved out to a separate repo anyway.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 6 Nov 2021, at 20:07, Aaron Krister Johnson <akjmicro@gmail.com> wrote:
>
> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
> This whole thread reminds me of a question I've kind of had in the back of my mind: how possible would it be to create a "modular/manual" build so that one can compile a csound binary with only the opcodes one wants/needs?
>
> I.E. lean and mean -- relates to retro computing and the whole embedded/tiny device idea.
>
> Aaron Krister Johnson
> http://www.untwelve.org
>
>
> On Mon, Nov 1, 2021 at 9:12 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
> Please post the links when you do! This thread made me smile. I think my first csound experience was on NeXT in about '95 at UBC but I remember running it in DOS windows too at home around then.
>
> iain
>
> On Wed, Oct 27, 2021 at 8:55 PM Josh Moore <kh405.7h30ry@gmail.com> wrote:
> yup version 4 runs, i didn't bother with version 6 as it probably needs windows which would kind of go against the doscember thing. every year all the vintage computer people (lazy game reviews, adrian's digital basement, etc) do youtube videos of nothing but DOS stuff... fast tracker ii was what i started out with so it's kinda nostalgic for me too, wanted to do it last year but didn't.
>
> found the manual for 4.10 as well so i know what opcodes are available. that's really all i need, now i can generate wavetables and drum sounds to stick in my fast tracker ii :P
>
> On Wed, Oct 27, 2021, 6:40 PM Richard Knight <richard@1bpm.net> wrote:
> Unfortunately I don't think this works in DOS proper, I tried it in
> dosemu (which did run the older v4 binary OK) and it reports
> This program cannot be run in DOS mode.
>
> On 2021-10-27 23:39, rasmus ekman wrote:
> > Here's one that reports as 6.08 (doubles), from 2016:
> > https://abc.se/~re/Stuff/Csound-DOS-608.zip
> >
> > I don't think I had fiddled with the code... - ah, just added the vosim
> > opcode
> >
> >
> > E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
> > 0dBFS level = 32768.0
> > --Csound version 6.08 (double samples) Dec 29 2016
> > [commit: GIT_HASH_VALUE]
> > libsndfile-1.0.25
> > Usage:  csound [-flags] orchfile scorefile
> > Legal flags are:
> > ...
> >
> >
> > Regards,
> >
> >       /re
> >
> > Den 2021-10-27 kl. 09:08, skrev Josh Moore:
> >> does anyone have this? i'm building an old fasttracker 2 box and it
> >> would be neat to have to make/modify samples in
> >> Csound mailing list Csound@listserv.heanet.ie
> >> <mailto:Csound@listserv.heanet.ie>
> >> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> >> https://github.com/csound/csound/issues Discussions of bugs and
> >> features can be posted here
> >
> > Csound mailing list
> > Csound@listserv.heanet.ie
> > https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> > Send bugs reports to
> >        https://github.com/csound/csound/issues
> > Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
> Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2022-12-07 17:49
Fromjohn
SubjectRe: [Csnd] [EXTERNAL] Re: [Csnd] Going lean/mean/diet with Csound -- possible?
Catrcing up with email...



On Mon, 5 Dec 2022, Aaron Krister Johnson wrote:

> Victor:
> 
> I had a look at the gihub compare diff. Looks like what John was doing makes
> sense: #ifdef and #endif macros to wrap opcode-related definitions. It looks
> controlled from a header file -- so I take to that to disable an opcode from
> being built, one puts
> either `//` in front of it, or for a block, `/* ... */` ???

Speaking fron a minimak7 point of viewno, that iis te wrong approasch. 
The headerfile H/opcodes.h givesa list og opcdes ti be includedof the 
optioal ones.  This list is not complete ut could be extended fr your 
desires.  Do you havec an idea of which opcodes or classes of opcde you 
want to remove	?  I couldrtn restart work on this branch.  You can cotact 
me via email or use te csound-dev mailig list.



> 
> Or, is this controllable from the build process with definition statements? (I
> actually think the former is straightforward and easier if one disables a huge
> amount of them).
> 
> Csound is feeling almost "too large" for me at the moment, and I'm thinking
> that if I cannot trim it down in a user-friendly way, I need to start using
> other options available to me. I know that's a person thing, but I don't like
> how "everything AND the kitchen sink" is thrown in there. :D
> 
> Thanks for your help in this.
> 
> Aaron Krister Johnson
> Music, etc.:
> http://www.untwelve.org
> https://www.youtube.com/channel/UC_utjGYbSizWE0dNyr0Vdmg
> https://soundcloud.com/aaron-krister-johnson
> https://soundcloud.com/filtercreed
> https://aaronkristerjohnson.bandcamp.com/
> Code:
> https://github.com/akjmicro
> 
> 
> On Mon, Dec 5, 2022 at 4:34 PM Victor Lazzarini 
> wrote:
>       Well, that is a possibility. Maybe John can give you more details
>       about this project.
> Note also that Csound 7 is very much beta at the moment.
> 
> Prof. Victor Lazzarini Maynooth University
> Ireland
>
>       On 5 Dec 2022, at 23:11, Aaron Krister Johnson
>        wrote:
>
>       Got it, Victor, thanks.
> 
> So, essentially, my best bet is to clone `minimal 7` and give that
> a go?
> 
> Aaron Krister Johnson
> Music, etc.:
> http://www.untwelve.org
> https://www.youtube.com/channel/UC_utjGYbSizWE0dNyr0Vdmg
> https://soundcloud.com/aaron-krister-johnson
> https://soundcloud.com/filtercreed
> https://aaronkristerjohnson.bandcamp.com/
> Code:
> https://github.com/akjmicro
> 
> 
> On Mon, Dec 5, 2022 at 4:01 PM Victor Lazzarini
>  wrote:
>       Maybe you misunderstood my comment. We removed almost
>       all opcode libs with external dependencies from the
>       main repo into the plugins repo. That is all we did,
>       all other opcodes are still in the main repo. You can
>       also configure the build to remove some elements in
>       the build though cmake options.
> John ffitch has worked on a version of Csound 7 that
> attempts to make custom builds of Csound with only selected
> opcodes. That is in the minimal7 branch and is described in
> his ICSC2022 paper.
> 
> And Rory is right to say that you can now build Csound
> (version 7, from the develop branch) with no dependencies at
> all. This opens the possibility of running Csound on bare
> metal, perhaps, if the standard C lib is present.
> 
> Prof. Victor Lazzarini Maynooth University
> Ireland
>
>       On 5 Dec 2022, at 21:03, Aaron Krister Johnson
>        wrote:
>
>                                   *Warning*
>
>       This email originated from outside of Maynooth
>       University's Mail System. Do not reply, click
>       links or open attachments unless you recognise
>       the sender and know the content is safe.
> 
> Although -- this still doesn't tell me how to disable
> various opcodes from being built....
> 
> These options in the file mentioned have nothing to do
> with choosing subsets of opcodes in a modular way.
> 
> Aaron Krister Johnson
> Music, etc.:
> http://www.untwelve.org
> https://www.youtube.com/channel/UC_utjGYbSizWE0dNyr0Vdmg
> https://soundcloud.com/aaron-krister-johnson
> https://soundcloud.com/filtercreed
> https://aaronkristerjohnson.bandcamp.com/
> Code:
> https://github.com/akjmicro
> 
> 
> On Mon, Dec 5, 2022 at 1:56 PM Aaron Krister Johnson
>  wrote:
>       This is helpful, thanks..
> 
> Aaron Krister Johnson
> Music, etc.:
> http://www.untwelve.org
> https://www.youtube.com/channel/UC_utjGYbSizWE0dNyr0Vdmg
> https://soundcloud.com/aaron-krister-johnson
> https://soundcloud.com/filtercreed
> https://aaronkristerjohnson.bandcamp.com/
> Code:
> https://github.com/akjmicro
> 
> 
> On Mon, Dec 5, 2022 at 1:39 PM Rory Walsh
>  wrote:
>       In the Csound repo there is a
>       Custom.cmake.ex file. Open it and
>       disable all the features you want.
>       Then save that file as Custom.cmake
>       Then run
> mkdir build && cd build
> cmake ..
> make 
> make install
> 
> btw, you can also run cmake-gui, open the
> Csound repo from it and you can easily set
> the build options through a user
> interface. It will configure cmake for
> you, but you will still need to run make
> from the build dir.  
> 
> On Mon, 5 Dec 2022 at 20:29, Aaron Krister
> Johnson  wrote:
>       Linux (Mint 21)
> 
> So, what file are you talking about?
> I need specifics. `CMakeLists.txt`?
> 
> I am more familiar with
> `./configure; make; make install`
> dances than I am with `cmake` and
> what goes into it, for starters.
> 
> Aaron Krister Johnson
> Music, etc.:
> http://www.untwelve.org
> https://www.youtube.com/channel/UC_utjGYbSizWE0dNyr0Vdmg
> https://soundcloud.com/aaron-krister-johnson
> https://soundcloud.com/filtercreed
> https://aaronkristerjohnson.bandcamp.com/
> Code:
> https://github.com/akjmicro
> 
> 
> On Mon, Dec 5, 2022 at 12:23 PM Rory
> Walsh  wrote:
>       What platform are you
>       trying to build for? I
>       typically disable all
>       options in a custom
>       cmake file when I'm
>       building. I can dig up
>       one of my 'disable
>       everything' custom cmake
>       files for you tomorrow
>       if you like. Btw, I
>       think Victor might have
>       recently made some
>       changes so that even
>       libsndfile isno longer
>       needed.  
> 
> On Mon, 5 Dec 2022 at 19:12,
> Aaron Krister Johnson
>  wrote:
>       Reviving this old
>       thread...
> 
> Victor: you said:
> """
> At the moment, the only
> dependency needed for
> Csound is libsndfile.
> With it, you can build a
> Csound version
> which is fairly lean and
> small. Most plugins have
> been moved out to a
> separate repo anyway.
> ========================
> """
> 
> So, looking at the code,
> it's all over the place.
> I don't get a clean
> sense that one can, as
> suggested, simply remove
> references in
> `CMakeLists.txt` and not
> build a family of
> opcodes.
> 
> For starters, I've tried
> that, and I get
> compilation errors
> galore... :/
> 
> References to various
> helper functions needed
> in multiple places are
> all over in different
> files, some of which if
> I make invisible to
> `cmake` thinking that
> they simply define an
> unwanted opcode, it ends
> up destroying a
> low-level library
> reference that was
> thrown into the same
> file; opcode registry
> entries sometimes are
> found within the module
> that defines the opcode;
> sometimes in things like
> `entry1.c`. Csound is
> brilliant and does
> amazing things, but TBH,
> this codebase needs some
> love if it indeed
> promises to be modular
> in a user-friendly way.
> 
> It's really hard to wrap
> my head around where
> things live other than
> `ag` or `grep`, and
> then, I find there's no
> consistent rhyme or
> reason why things live
> where they do -- it all
> seems to be a product of
> a messy evolution.
> 
> That said, there may be
> an easy answer here. I'm
> just not seeing it yet.
> 
> Ultimately, I'd like to
> build a "diet" version
> and have good old
> fashioned `./configure
> --no-fft-opcodes
> --no-pvc-opcodes` style
> of disabling certain
> opcodes, if that makes
> sense. How do I do that,
> precisely) in the
> current `cmake`
> structure?
> 
> I think I need some
> hand-holding from an ace
> dev who knows the layout
> of this code
> top-to-bottom: OR --
> simple instructions,
> step-by-step on how one
> might do this....the
> statement "It can be
> done" hasn't been
> helpful so far, as I've
> taken the time to try, a
> couple of hours at
> least, and it's fallen
> flat with no joy.
> 
> 
> Aaron Krister Johnson
> Music, etc.:
> http://www.untwelve.org
> https://www.youtube.com/channel/UC_utjGYbSizWE0dNyr0Vdmg
> https://soundcloud.com/aaron-krister-johnson
> https://soundcloud.com/filtercreed
> https://aaronkristerjohnson.bandcamp.com/
> Code:
> https://github.com/akjmicro
> 
> 
> On Sun, Nov 7, 2021 at
> 11:19 AM Victor
> Lazzarini
> 
> wrote:
>       At the
>       moment, the
>       only
>       dependency
>       needed for
>       Csound is
>       libsndfile.
>       With it, you
>       can build a
>       Csound
>       version
>       which is
>       fairly lean
>       and small.
>       Most plugins
>       have been
>       moved out to
>       a separate
>       repo anyway.
>       ========================
>       Prof. Victor
>       Lazzarini
>       Maynooth
>       University
>       Ireland
>
>       > On 6 Nov
>       2021, at
>       20:07, Aaron
>       Krister
>       Johnson
>       
>       wrote:
>       >
>       >
>       WARNINGThis
>       email
>       originated
>       from outside
>       of Maynooth
>       University's
>       Mail System.
>       Do not
>       reply, click
>       links or
>       open
>       attachments
>       unless you
>       recognise
>       the sender
>       and know the
>       content is
>       safe.
>       > This whole
>       thread
>       reminds me
>       of a
>       question
>       I've kind of
>       had in the
>       back of my
>       mind: how
>       possible
>       would it be
>       to create a
>       "modular/manual"
>       build so
>       that one can
>       compile a
>       csound
>       binary with
>       only the
>       opcodes one
>       wants/needs?
>       >
>       > I.E. lean
>       and mean --
>       relates to
>       retro
>       computing
>       and the
>       whole
>       embedded/tiny
>       device idea.
>       >
>       > Aaron
>       Krister
>       Johnson
>       >
>       http://www.untwelve.org
>       >
>       >
>       > On Mon,
>       Nov 1, 2021
>       at 9:12 PM
>       Iain Duncan
>       
>       wrote:
>       > Please
>       post the
>       links when
>       you do! This
>       thread made
>       me smile. I
>       think my
>       first csound
>       experience
>       was on NeXT
>       in about '95
>       at UBC but I
>       remember
>       running it
>       in DOS
>       windows too
>       at home
>       around then.
>       >
>       > iain
>       >
>       > On Wed,
>       Oct 27, 2021
>       at 8:55 PM
>       Josh Moore
>       
>       wrote:
>       > yup
>       version 4
>       runs, i
>       didn't
>       bother with
>       version 6 as
>       it probably
>       needs
>       windows
>       which would
>       kind of go
>       against the
>       doscember
>       thing. every
>       year all the
>       vintage
>       computer
>       people (lazy
>       game
>       reviews,
>       adrian's
>       digital
>       basement,
>       etc) do
>       youtube
>       videos of
>       nothing but
>       DOS stuff...
>       fast tracker
>       ii was what
>       i started
>       out with so
>       it's kinda
>       nostalgic
>       for me too,
>       wanted to do
>       it last year
>       but didn't.
>       >
>       > found the
>       manual for
>       4.10 as well
>       so i know
>       what opcodes
>       are
>       available.
>       that's
>       really all i
>       need, now i
>       can generate
>       wavetables
>       and drum
>       sounds to
>       stick in my
>       fast tracker
>       ii :P
>       >
>       > On Wed,
>       Oct 27,
>       2021, 6:40
>       PM Richard
>       Knight
>       
>       wrote:
>       >
>       Unfortunately
>       I don't
>       think this
>       works in DOS
>       proper, I
>       tried it in
>       > dosemu
>       (which did
>       run the
>       older v4
>       binary OK)
>       and it
>       reports
>       > This
>       program
>       cannot be
>       run in DOS
>       mode.
>       >
>       > On
>       2021-10-27
>       23:39,
>       rasmus ekman
>       wrote:
>       > > Here's
>       one that
>       reports as
>       6.08
>       (doubles),
>       from 2016:
>       > >
>       https://abc.se/~re/Stuff/Csound-DOS-608.zip
>       > >
>       > > I don't
>       think I had
>       fiddled with
>       the code...
>       - ah, just
>       added the
>       vosim
>       > > opcode
>       > >
>       > >
>       > >
>       E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
>       > > 0dBFS
>       level =
>       32768.0
>       > > --Csound
>       version 6.08
>       (double
>       samples) Dec
>       29 2016
>       > > [commit:
>       GIT_HASH_VALUE]
>       > >
>       libsndfile-1.0.25
>       > > Usage: 
>       csound
>       [-flags]
>       orchfile
>       scorefile
>       > > Legal
>       flags are:
>       > > ...
>       > >
>       > >
>       > > Regards,
>       > >
>       > >     
>        /re
>       > >
>       > > Den
>       2021-10-27
>       kl. 09:08,
>       skrev Josh
>       Moore:
>       > >> does
>       anyone have
>       this? i'm
>       building an
>       old
>       fasttracker
>       2 box and it
>       > >> would
>       be neat to
>       have to
>       make/modify
>       samples in
>       > >> Csound
>       mailing list
>       Csound@listserv.heanet.ie
>       > >>
>       
>       > >>
>       https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>       Send bugs
>       reports to
>       > >>
>       https://github.com/csound/csound/issues
>       Discussions
>       of bugs and
>       > >>
>       features can
>       be posted
>       here
>       > >
>       > > Csound
>       mailing list
>       > >
>       Csound@listserv.heanet.ie
>       > >
>       https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>       > > Send
>       bugs reports
>       to
>       > >       
>       https://github.com/csound/csound/issues
>       > >
>       Discussions
>       of bugs and
>       features can
>       be posted
>       here
>       >
>       > Csound
>       mailing list
>       >
>       Csound@listserv.heanet.ie
>       >
>       https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>       > Send bugs
>       reports to
>       >       
>        https://github.com/csound/csound/issues
>       >
>       Discussions
>       of bugs and
>       features can
>       be posted
>       here
>       > Csound
>       mailing list
>       Csound@listserv.heanet.ie
>       https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>       Send bugs
>       reports to
>       https://github.com/csound/csound/issues
>       Discussions
>       of bugs and
>       features can
>       be posted
>       here
>       > Csound
>       mailing list
>       Csound@listserv.heanet.ie
>       https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>       Send bugs
>       reports to
>       https://github.com/csound/csound/issues
>       Discussions
>       of bugs and
>       features can
>       be posted
>       here
>       > Csound
>       mailing list
>       Csound@listserv.heanet.ie
>       https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>       Send bugs
>       reports to
>       https://github.com/csound/csound/issues
>       Discussions
>       of bugs and
>       features can
>       be posted
>       here
>
>       Csound
>       mailing list
>       Csound@listserv.heanet.ie
>       https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>       Send bugs
>       reports to
>              
>       https://github.com/csound/csound/issues
>       Discussions
>       of bugs and
>       features can
>       be posted
>       here
> 
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
> https://github.com/csound/csound/issues
> Discussions of bugs and
> features can be posted
> here
> 
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
> https://github.com/csound/csound/issues
> Discussions of bugs and
> features can be posted here
> 
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
> https://github.com/csound/csound/issues
> Discussions of bugs and features can
> be posted here
> 
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
> https://github.com/csound/csound/issues
> Discussions of bugs and features can be
> posted here
> 
> Csound mailing list Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send
> bugs reports to
> https://github.com/csound/csound/issues Discussions of
> bugs and features can be posted here
> 
> Csound mailing list Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs
> reports to https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> 
> Csound mailing list Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports
> to https://github.com/csound/csound/issues Discussions of bugs and
> features can be posted here
> 
> Csound mailing list Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> https://github.com/csound/csound/issues Discussions of bugs and features
> can be posted here
> 
> Csound mailing list Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> https://github.com/csound/csound/issues Discussions of bugs and features can
> be posted here
>

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2022-12-09 15:38
FromAaron Krister Johnson
SubjectRe: [Csnd] [EXTERNAL] Re: [Csnd] Going lean/mean/diet with Csound -- possible?
Hi John,

Nice to hear from you, and as always, to you and the other core devs, your excellent work is much appreciated.

My first thought: I wouldn't want to direct this to be about _my_ whims, but rather, increasing the modularity of the csound codebase and build and configure process so that it isn't so "hard coupled".
The ultimate ideal goal by my thinking would be that "anyone can easily roll their own" version.

The process you outline in your paper is a good start, but I think tying these choices to "what I happen to have in a given orchestra" is not what I would be aiming for. I can see that serving a specialized purpose for a single embedded project, but I am more thinking about: making the number of opcode choices smaller for those that don't need them all, and potentially making the codebase split into various packages so that one doesn't need to download all the code either. (I realize that is a rather large lift in terms of coding and refactoring, so I don't expect this would be happening soon, and it might be something rejected as pie in the sky...having said that, downloading individual sub components separately would indicate that the app has reached true modularity and pluggability..._all_ opcodes except some primitive set would be considered pluggable and user-selectable.) Again, the ideal is "roll your own".

FWIW, my own personal subset, to give you an idea, would consist of all the more basic oscillators, filters, effects, GENS, and MIDI opcodes that one would expect to do 90% of classic synthesis with. I would first get rid of some FFT and Pvoc stuff (although I have used them on occasion for more sound-design theatrical situations). So, one might have separate builds for different needs. I can see some folks not needing synth stuff, but wanting an effects box. So, it would be about giving the most modular and free choice about "what one really uses and needs".

Again: thanks for all the wonderful work over the years. These should not be read as whiny demands, but ideals from an appreciative user of a powerful system just giving his 2 cents of what an even more ideal future for this app might look like.

-AKJ


On Wed, Dec 7, 2022, 10:49 john <jpff@codemist.co.uk> wrote:
Catrcing up with email...



On Mon, 5 Dec 2022, Aaron Krister Johnson wrote:

> Victor:
>
> I had a look at the gihub compare diff. Looks like what John was doing makes
> sense: #ifdef and #endif macros to wrap opcode-related definitions. It looks
> controlled from a header file -- so I take to that to disable an opcode from
> being built, one puts
> either `//` in front of it, or for a block, `/* ... */` ???

Speaking fron a minimak7 point of viewno, that iis te wrong approasch.
The headerfile H/opcodes.h givesa list og opcdes ti be includedof the
optioal ones.  This list is not complete ut could be extended fr your
desires.  Do you havec an idea of which opcodes or classes of opcde you
want to remove  ?  I couldrtn restart work on this branch.  You can cotact
me via email or use te csound-dev mailig list.



>
> Or, is this controllable from the build process with definition statements? (I
> actually think the former is straightforward and easier if one disables a huge
> amount of them).
>
> Csound is feeling almost "too large" for me at the moment, and I'm thinking
> that if I cannot trim it down in a user-friendly way, I need to start using
> other options available to me. I know that's a person thing, but I don't like
> how "everything AND the kitchen sink" is thrown in there. :D
>
> Thanks for your help in this.
>
> Aaron Krister Johnson
> Music, etc.:
> http://www.untwelve.org
> https://www.youtube.com/channel/UC_utjGYbSizWE0dNyr0Vdmg
> https://soundcloud.com/aaron-krister-johnson
> https://soundcloud.com/filtercreed
> https://aaronkristerjohnson.bandcamp.com/
> Code:
> https://github.com/akjmicro
>
>
> On Mon, Dec 5, 2022 at 4:34 PM Victor Lazzarini <Victor.Lazzarini@mu.ie>
> wrote:
>       Well, that is a possibility. Maybe John can give you more details
>       about this project.
> Note also that Csound 7 is very much beta at the moment.
>
> Prof. Victor Lazzarini Maynooth University
> Ireland
>
>       On 5 Dec 2022, at 23:11, Aaron Krister Johnson
>       <akjmicro@gmail.com> wrote:
>
>       Got it, Victor, thanks.
>
> So, essentially, my best bet is to clone `minimal 7` and give that
> a go?
>
> Aaron Krister Johnson
> Music, etc.:
> http://www.untwelve.org
> https://www.youtube.com/channel/UC_utjGYbSizWE0dNyr0Vdmg
> https://soundcloud.com/aaron-krister-johnson
> https://soundcloud.com/filtercreed
> https://aaronkristerjohnson.bandcamp.com/
> Code:
> https://github.com/akjmicro
>
>
> On Mon, Dec 5, 2022 at 4:01 PM Victor Lazzarini
> <Victor.Lazzarini@mu.ie> wrote:
>       Maybe you misunderstood my comment. We removed almost
>       all opcode libs with external dependencies from the
>       main repo into the plugins repo. That is all we did,
>       all other opcodes are still in the main repo. You can
>       also configure the build to remove some elements in
>       the build though cmake options.
> John ffitch has worked on a version of Csound 7 that
> attempts to make custom builds of Csound with only selected
> opcodes. That is in the minimal7 branch and is described in
> his ICSC2022 paper.
>
> And Rory is right to say that you can now build Csound
> (version 7, from the develop branch) with no dependencies at
> all. This opens the possibility of running Csound on bare
> metal, perhaps, if the standard C lib is present.
>
> Prof. Victor Lazzarini Maynooth University
> Ireland
>
>       On 5 Dec 2022, at 21:03, Aaron Krister Johnson
>       <akjmicro@gmail.com> wrote:
>
>                                   *Warning*
>
>       This email originated from outside of Maynooth
>       University's Mail System. Do not reply, click
>       links or open attachments unless you recognise
>       the sender and know the content is safe.
>
> Although -- this still doesn't tell me how to disable
> various opcodes from being built....
>
> These options in the file mentioned have nothing to do
> with choosing subsets of opcodes in a modular way.
>
> Aaron Krister Johnson
> Music, etc.:
> http://www.untwelve.org
> https://www.youtube.com/channel/UC_utjGYbSizWE0dNyr0Vdmg
> https://soundcloud.com/aaron-krister-johnson
> https://soundcloud.com/filtercreed
> https://aaronkristerjohnson.bandcamp.com/
> Code:
> https://github.com/akjmicro
>
>
> On Mon, Dec 5, 2022 at 1:56 PM Aaron Krister Johnson
> <akjmicro@gmail.com> wrote:
>       This is helpful, thanks..
>
> Aaron Krister Johnson
> Music, etc.:
> http://www.untwelve.org
> https://www.youtube.com/channel/UC_utjGYbSizWE0dNyr0Vdmg
> https://soundcloud.com/aaron-krister-johnson
> https://soundcloud.com/filtercreed
> https://aaronkristerjohnson.bandcamp.com/
> Code:
> https://github.com/akjmicro
>
>
> On Mon, Dec 5, 2022 at 1:39 PM Rory Walsh
> <rorywalsh@ear.ie> wrote:
>       In the Csound repo there is a
>       Custom.cmake.ex file. Open it and
>       disable all the features you want.
>       Then save that file as Custom.cmake
>       Then run
> mkdir build && cd build
> cmake ..
> make 
> make install
>
> btw, you can also run cmake-gui, open the
> Csound repo from it and you can easily set
> the build options through a user
> interface. It will configure cmake for
> you, but you will still need to run make
> from the build dir.  
>
> On Mon, 5 Dec 2022 at 20:29, Aaron Krister
> Johnson <akjmicro@gmail.com> wrote:
>       Linux (Mint 21)
>
> So, what file are you talking about?
> I need specifics. `CMakeLists.txt`?
>
> I am more familiar with
> `./configure; make; make install`
> dances than I am with `cmake` and
> what goes into it, for starters.
>
> Aaron Krister Johnson
> Music, etc.:
> http://www.untwelve.org
> https://www.youtube.com/channel/UC_utjGYbSizWE0dNyr0Vdmg
> https://soundcloud.com/aaron-krister-johnson
> https://soundcloud.com/filtercreed
> https://aaronkristerjohnson.bandcamp.com/
> Code:
> https://github.com/akjmicro
>
>
> On Mon, Dec 5, 2022 at 12:23 PM Rory
> Walsh <rorywalsh@ear.ie> wrote:
>       What platform are you
>       trying to build for? I
>       typically disable all
>       options in a custom
>       cmake file when I'm
>       building. I can dig up
>       one of my 'disable
>       everything' custom cmake
>       files for you tomorrow
>       if you like. Btw, I
>       think Victor might have
>       recently made some
>       changes so that even
>       libsndfile isno longer
>       needed.  
>
> On Mon, 5 Dec 2022 at 19:12,
> Aaron Krister Johnson
> <akjmicro@gmail.com> wrote:
>       Reviving this old
>       thread...
>
> Victor: you said:
> """
> At the moment, the only
> dependency needed for
> Csound is libsndfile.
> With it, you can build a
> Csound version
> which is fairly lean and
> small. Most plugins have
> been moved out to a
> separate repo anyway.
> ========================
> """
>
> So, looking at the code,
> it's all over the place.
> I don't get a clean
> sense that one can, as
> suggested, simply remove
> references in
> `CMakeLists.txt` and not
> build a family of
> opcodes.
>
> For starters, I've tried
> that, and I get
> compilation errors
> galore... :/
>
> References to various
> helper functions needed
> in multiple places are
> all over in different
> files, some of which if
> I make invisible to
> `cmake` thinking that
> they simply define an
> unwanted opcode, it ends
> up destroying a
> low-level library
> reference that was
> thrown into the same
> file; opcode registry
> entries sometimes are
> found within the module
> that defines the opcode;
> sometimes in things like
> `entry1.c`. Csound is
> brilliant and does
> amazing things, but TBH,
> this codebase needs some
> love if it indeed
> promises to be modular
> in a user-friendly way.
>
> It's really hard to wrap
> my head around where
> things live other than
> `ag` or `grep`, and
> then, I find there's no
> consistent rhyme or
> reason why things live
> where they do -- it all
> seems to be a product of
> a messy evolution.
>
> That said, there may be
> an easy answer here. I'm
> just not seeing it yet.
>
> Ultimately, I'd like to
> build a "diet" version
> and have good old
> fashioned `./configure
> --no-fft-opcodes
> --no-pvc-opcodes` style
> of disabling certain
> opcodes, if that makes
> sense. How do I do that,
> precisely) in the
> current `cmake`
> structure?
>
> I think I need some
> hand-holding from an ace
> dev who knows the layout
> of this code
> top-to-bottom: OR --
> simple instructions,
> step-by-step on how one
> might do this....the
> statement "It can be
> done" hasn't been
> helpful so far, as I've
> taken the time to try, a
> couple of hours at
> least, and it's fallen
> flat with no joy.
>
>
> Aaron Krister Johnson
> Music, etc.:
> http://www.untwelve.org
> https://www.youtube.com/channel/UC_utjGYbSizWE0dNyr0Vdmg
> https://soundcloud.com/aaron-krister-johnson
> https://soundcloud.com/filtercreed
> https://aaronkristerjohnson.bandcamp.com/
> Code:
> https://github.com/akjmicro
>
>
> On Sun, Nov 7, 2021 at
> 11:19 AM Victor
> Lazzarini
> <Victor.Lazzarini@mu.ie>
> wrote:
>       At the
>       moment, the
>       only
>       dependency
>       needed for
>       Csound is
>       libsndfile.
>       With it, you
>       can build a
>       Csound
>       version
>       which is
>       fairly lean
>       and small.
>       Most plugins
>       have been
>       moved out to
>       a separate
>       repo anyway.
>       ========================
>       Prof. Victor
>       Lazzarini
>       Maynooth
>       University
>       Ireland
>
>       > On 6 Nov
>       2021, at
>       20:07, Aaron
>       Krister
>       Johnson
>       <akjmicro@gmail.com>
>       wrote:
>       >
>       >
>       WARNINGThis
>       email
>       originated
>       from outside
>       of Maynooth
>       University's
>       Mail System.
>       Do not
>       reply, click
>       links or
>       open
>       attachments
>       unless you
>       recognise
>       the sender
>       and know the
>       content is
>       safe.
>       > This whole
>       thread
>       reminds me
>       of a
>       question
>       I've kind of
>       had in the
>       back of my
>       mind: how
>       possible
>       would it be
>       to create a
>       "modular/manual"
>       build so
>       that one can
>       compile a
>       csound
>       binary with
>       only the
>       opcodes one
>       wants/needs?
>       >
>       > I.E. lean
>       and mean --
>       relates to
>       retro
>       computing
>       and the
>       whole
>       embedded/tiny
>       device idea.
>       >
>       > Aaron
>       Krister
>       Johnson
>       >
>       http://www.untwelve.org
>       >
>       >
>       > On Mon,
>       Nov 1, 2021
>       at 9:12 PM
>       Iain Duncan
>       <iainduncanlists@gmail.com>
>       wrote:
>       > Please
>       post the
>       links when
>       you do! This
>       thread made
>       me smile. I
>       think my
>       first csound
>       experience
>       was on NeXT
>       in about '95
>       at UBC but I
>       remember
>       running it
>       in DOS
>       windows too
>       at home
>       around then.
>       >
>       > iain
>       >
>       > On Wed,
>       Oct 27, 2021
>       at 8:55 PM
>       Josh Moore
>       <kh405.7h30ry@gmail.com>
>       wrote:
>       > yup
>       version 4
>       runs, i
>       didn't
>       bother with
>       version 6 as
>       it probably
>       needs
>       windows
>       which would
>       kind of go
>       against the
>       doscember
>       thing. every
>       year all the
>       vintage
>       computer
>       people (lazy
>       game
>       reviews,
>       adrian's
>       digital
>       basement,
>       etc) do
>       youtube
>       videos of
>       nothing but
>       DOS stuff...
>       fast tracker
>       ii was what
>       i started
>       out with so
>       it's kinda
>       nostalgic
>       for me too,
>       wanted to do
>       it last year
>       but didn't.
>       >
>       > found the
>       manual for
>       4.10 as well
>       so i know
>       what opcodes
>       are
>       available.
>       that's
>       really all i
>       need, now i
>       can generate
>       wavetables
>       and drum
>       sounds to
>       stick in my
>       fast tracker
>       ii :P
>       >
>       > On Wed,
>       Oct 27,
>       2021, 6:40
>       PM Richard
>       Knight
>       <richard@1bpm.net>
>       wrote:
>       >
>       Unfortunately
>       I don't
>       think this
>       works in DOS
>       proper, I
>       tried it in
>       > dosemu
>       (which did
>       run the
>       older v4
>       binary OK)
>       and it
>       reports
>       > This
>       program
>       cannot be
>       run in DOS
>       mode.
>       >
>       > On
>       2021-10-27
>       23:39,
>       rasmus ekman
>       wrote:
>       > > Here's
>       one that
>       reports as
>       6.08
>       (doubles),
>       from 2016:
>       > >
>       https://abc.se/~re/Stuff/Csound-DOS-608.zip
>       > >
>       > > I don't
>       think I had
>       fiddled with
>       the code...
>       - ah, just
>       added the
>       vosim
>       > > opcode
>       > >
>       > >
>       > >
>       E:\DevProjects\Csound\msvc\Csound-6.09.1\Release>csound-dos-608
>       > > 0dBFS
>       level =
>       32768.0
>       > > --Csound
>       version 6.08
>       (double
>       samples) Dec
>       29 2016
>       > > [commit:
>       GIT_HASH_VALUE]
>       > >
>       libsndfile-1.0.25
>       > > Usage: 
>       csound
>       [-flags]
>       orchfile
>       scorefile
>       > > Legal
>       flags are:
>       > > ...
>       > >
>       > >
>       > > Regards,
>       > >
>       > >     
>        /re
>       > >
>       > > Den
>       2021-10-27
>       kl. 09:08,
>       skrev Josh
>       Moore:
>       > >> does
>       anyone have
>       this? i'm
>       building an
>       old
>       fasttracker
>       2 box and it
>       > >> would
>       be neat to
>       have to
>       make/modify
>       samples in
>       > >> Csound
>       mailing list
>       Csound@listserv.heanet.ie
>       > >>
>       <mailto:Csound@listserv.heanet.ie>
>       > >>
>       https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>       Send bugs
>       reports to
>       > >>
>       https://github.com/csound/csound/issues
>       Discussions
>       of bugs and
>       > >>
>       features can
>       be posted
>       here
>       > >
>       > > Csound
>       mailing list
>       > >
>       Csound@listserv.heanet.ie
>       > >
>       https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>       > > Send
>       bugs reports
>       to
>       > >       
>       https://github.com/csound/csound/issues
>       > >
>       Discussions
>       of bugs and
>       features can
>       be posted
>       here
>       >
>       > Csound
>       mailing list
>       >
>       Csound@listserv.heanet.ie
>       >
>       https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>       > Send bugs
>       reports to
>       >       
>        https://github.com/csound/csound/issues
>       >
>       Discussions
>       of bugs and
>       features can
>       be posted
>       here
>       > Csound
>       mailing list
>       Csound@listserv.heanet.ie
>       https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>       Send bugs
>       reports to
>       https://github.com/csound/csound/issues
>       Discussions
>       of bugs and
>       features can
>       be posted
>       here
>       > Csound
>       mailing list
>       Csound@listserv.heanet.ie
>       https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>       Send bugs
>       reports to
>       https://github.com/csound/csound/issues
>       Discussions
>       of bugs and
>       features can
>       be posted
>       here
>       > Csound
>       mailing list
>       Csound@listserv.heanet.ie
>       https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>       Send bugs
>       reports to
>       https://github.com/csound/csound/issues
>       Discussions
>       of bugs and
>       features can
>       be posted
>       here
>
>       Csound
>       mailing list
>       Csound@listserv.heanet.ie
>       https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>       Send bugs
>       reports to
>              
>       https://github.com/csound/csound/issues
>       Discussions
>       of bugs and
>       features can
>       be posted
>       here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
> https://github.com/csound/csound/issues
> Discussions of bugs and
> features can be posted
> here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
> https://github.com/csound/csound/issues
> Discussions of bugs and
> features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
> https://github.com/csound/csound/issues
> Discussions of bugs and features can
> be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
> https://github.com/csound/csound/issues
> Discussions of bugs and features can be
> posted here
>
> Csound mailing list Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send
> bugs reports to
> https://github.com/csound/csound/issues Discussions of
> bugs and features can be posted here
>
> Csound mailing list Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs
> reports to https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
>
> Csound mailing list Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports
> to https://github.com/csound/csound/issues Discussions of bugs and
> features can be posted here
>
> Csound mailing list Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> https://github.com/csound/csound/issues Discussions of bugs and features
> can be posted here
>
> Csound mailing list Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> https://github.com/csound/csound/issues Discussions of bugs and features can
> be posted here
>

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here