Mac OS 9 Lives

Mac OS 9 Discussion => Development & Programming => Topic started by: Protools5LEGuy on July 06, 2014, 03:31:00 PM

Title: Developing software tools needed to develop Apps and Plugs-Ins
Post by: Protools5LEGuy on July 06, 2014, 03:31:00 PM
UPDATE 28-11-17UPDATE 28-11-17UPDATE 28-11-17UPDATE 28-11-17UPDATE 28-11-17

THIS IS THE OLDEST POST HERE ASKING FOR DEVELOPING TOOLS FOR APPS AND PLUGINS.

It started been focusing on Audio but later evolved to a General State.

ORIGINAL POST

Do we have here the tools to DEVELOP plug-ins?

To program in MAX there should be some packages...Documentation, etc
To program vst plug there should be some steinberg SDK
I have no clue about Protools RTAS or TDM plugs SDK, probably they sold the SDK in a secrecy contract (?)

It may involved programming in C+, Java or XCode or anything.
In the OS9/X transition lots of apps said that were carbonized. I think it meaned that it could work in OS9 and X, or maybe it meaned that it could work with OS X...I am not sure what that means.

I know Classilla http://www.floodgap.com/software/classilla/ (http://www.floodgap.com/software/classilla/) is developed using Codewarrior http://macintoshgarden.org/search/node/codewarrior (http://macintoshgarden.org/search/node/codewarrior)
http://macintoshgarden.org/author/metrowerks (http://macintoshgarden.org/author/metrowerks)==> This could be backup on our servers, at least the importants ones

This thing seem interesting to take windows program to OS9 http://macintoshgarden.org/apps/microsoft-visual-c-40-cross-development-edition-macintosh (http://macintoshgarden.org/apps/microsoft-visual-c-40-cross-development-edition-macintosh)

Interesting...http://macintoshgarden.org/apps/apple-developer-cd-collection (http://macintoshgarden.org/apps/apple-developer-cd-collection)

Let's post here tools needed to make any kind of AUDIO software in OS9. I readed here somewhere that the only commom way to program things was with MAX MSP.
MAX http://en.wikipedia.org/wiki/Max_%28software%29 (http://en.wikipedia.org/wiki/Max_%28software%29)


The goal is to have the documentation and tools to develop our owns plug-ins/host/guess. RTAS, VST, MAS, etc.

At least Steinberg OS9 sdk should be easy...

http://www.steinberg.net/en/company/developers.html (http://www.steinberg.net/en/company/developers.html)

Title: Re: Developing software tools needed to PROGRAM plugs
Post by: supernova777 on July 06, 2014, 05:56:33 PM
im interested in this too  8)
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: dr bu on July 06, 2014, 06:45:31 PM
if you know your max/msp, making a vst/rtas-plug is pretty simple. the pluggo package comes with this tutorial. as with the original pluggo-plugins the very same object is valid both in protools and cubase etc... ;D
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: Protools5LEGuy on July 06, 2014, 07:29:43 PM
if you know your max/msp, making a vst/rtas-plug is pretty simple. the pluggo package comes with this tutorial. as with the original pluggo-plugins the very same object is valid both in protools and cubase etc... ;D
Quote
This manual describes how to use the audio plug-in construction tools in Max/MSP. These
tools consist of nine Max/MSP objects, an application called Plugmaker, and a shell, which we
call pluggo that loads plug-ins built in Max/MSP and creates an interface for them that appears to
a host audio program as an audio plug-in. In this manual, we refer to the pluggoshell as the
runtime plug-in environment and the audio program that can make use of pluggoas the host mixer
or host sequencer.
pluggocan be downloaded from the Cycling ’74 web site www.cycling74.com. Demo versions of
popular sequencing applications such as Cubase, Logic Audio, Pro Tools, and Digital Performer
can be obtained—with varying degrees of difficulty—from their publishers and distributors.
Max/MSP can also be used as a host environment for plug-ins developed in Max/MSP using the
vst~object.
The runtime plug-in environment currently runs under RTAS, MAS, and VST host
environments and provides platform-independence so Max/MSP developers may write a single
plug-in that works under all supported environments.

Ok, that is an aproach, via Max/MSP's Pluggo. http://www.dontcrack.com/freeware/downloads.php/id/3139/software/Pluggo-runtime/ (http://www.dontcrack.com/freeware/downloads.php/id/3139/software/Pluggo-runtime/)


What software is needed? I cant find it here http://cycling74.com/downloads/discontinued/ (http://cycling74.com/downloads/discontinued/) or here http://cycling74.com/downloads/older-discontinued/ (http://cycling74.com/downloads/older-discontinued/)

It is on the Garden http://macintoshgarden.org/apps/pluggo-304 (http://macintoshgarden.org/apps/pluggo-304) as Chris told us on http://macos9lives.com/smforum/index.php?topic=368.0 (http://macos9lives.com/smforum/index.php?topic=368.0)


We need the Steinberg SDK also. It could be great to make an VST to RTAS/MAS OS9 adapter as the one from fxpansion for OSX.

There is another kind of plug not spoken here. Premiere plug-ins. Some DAWS can use them (?).

I tested Pluggo for WinProtools and it came with so many plugs that my plugs list went crazy long. I will see if it makes crazy long my RTAS options on OS9.
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: Protools5LEGuy on July 06, 2014, 07:53:14 PM

i am working on a new host as you can see in the respective forum thread

give me a few days with the thing i promised mactron (i have some other hobbies, too) then we will see what we need next. :)

-110

@110 Can you tell us the process you made to achieve that?
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: dr bu on July 06, 2014, 07:55:48 PM
What software is needed?

well, you will need max/msp 4.0.5 to 4.1. (after that only osx). and a small program that comes with Pluggo called Plugmaker 2.0. there is a copy of max/msp 4.1 at the server. once finished programming in max/msp you drop the file on the Plugmaker icon and bingo. thats it.
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: Protools5LEGuy on July 06, 2014, 08:25:53 PM
http://macos9lives.com/smforum/index.php?topic=1191.0 (http://macos9lives.com/smforum/index.php?topic=1191.0)
110 making a Custom VST host app at the Mactron request called hozzt03 in MAX.

@ 110 or Dr Bu.  Has a OS9 MAX programming environment strong enought to move hardware modeled emulations?

Is there out info about modeling hardware based on electronics schematics? Or the math models used to emulate things?

For example. I would like to have an app like the piano keyboard you get from logic to use the Apple keyboard sending midi. Is this reachable within MAX? Or that should be a Codewarrior project involving OMS?
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: IIO on July 07, 2014, 01:13:04 AM
about SDKs´n stuff: the steinberg SDKs are always only in newest version available from steinberg. for mac os 9 we should get a copy of the 2.0 and 2.1 SDK. older ones are uninteresting.

most VST developers were using codewarrior 5 and not codewarrior 7, for the SDK was built for the older system.

an MAS SDK could be available on request by the owner.

RTAS is a closed format.

Quote
@ 110 or Dr Bu.  Has a OS9 MAX programming environment strong enought to move hardware modeled emulations?

Is there out info about modeling hardware based on electronics schematics? Or the math models used to emulate things?

not sure what you mean. noone really models electronics. :) well, sure, most things you cando in java or C can also be reached using max. but certain technologies - like building GUIs or FFT - require 5 times more work or use 5 times more CPU than using a lower level language.

proper deconvolution or wavelet stuff is more or less impossible in max/msp for OS9, everything else works fine.

Quote
For example. I would like to have an app like the piano keyboard you get from logic to use the Apple keyboard sending midi. Is this reachable within MAX?

Code: [Select]
[key]
|
[select 55]
|
[i 60]
|
[append 108]
|
[makenote 0 108 250]
|
[midiformat]
|
[midiout port 1]

any questions left?
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: supernova777 on July 08, 2014, 11:06:36 AM
http://web.archive.org/web/20000816175421/http://www.opcode.com/products/max/

looks like opcode was distributing max aswell
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: Protools5LEGuy on July 08, 2014, 02:47:26 PM
any questions left?
Too many... Can you describe US how did you implemented VST on MAX to make hotzz...(FIRST APP DEVELOPED IN MACOS9LIVES!)   :D ;D :D ;D :)


about SDKs´n stuff: the steinberg SDKs are always only in newest version available from steinberg. for mac os 9 we should get a copy of the 2.0 and 2.1 SDK. older ones are uninteresting.

most VST developers were using codewarrior 5 and not codewarrior 7, for the SDK was built for the older system.

an MAS SDK could be available on request by the owner.

RTAS is a closed format.

I would like to know how difficult could be to make an VST to MAX adapter, for using VST (FX OR INSTRUMENT) on PROTOOLS. It seems MAX "things" are seen on Protools thru Pluggo's Plugmaker 2.0. We can reach RTAS specs thru that.

Is possible to develop an MAS to RTAS adapter thru MAX?

most VST developers were using codewarrior 5 and not codewarrior 7, for the SDK was built for the older
not sure what you mean. noone really models electronics. :) well, sure, most things you cando in java or C can also be reached using max. but certain technologies - like building GUIs or FFT - require 5 times more work or use 5 times more CPU than using a lower level language.




How difficult should be to emulate http://www.waves.com/plugins/puigchild-660-670 (http://www.waves.com/plugins/puigchild-660-670)  using https://www.google.com/search?q=fairchild+670+schematic&espv=2&biw=1220&bih=639&tbm=isch&tbo=u&source=univ&sa=X&ei=WWW8U7rRJIasOOmWgOgJ&sqi=2&ved=0CB8QsAQ (https://www.google.com/search?q=fairchild+670+schematic&espv=2&biw=1220&bih=639&tbm=isch&tbo=u&source=univ&sa=X&ei=WWW8U7rRJIasOOmWgOgJ&sqi=2&ved=0CB8QsAQ) with https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=mathematical+modeling+electrical+system (https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=mathematical+modeling+electrical+system)?


Code: [Select]
[key]
|
[select 55]
|
[i 60]
|
[append 108]
|
[makenote 0 108 250]
|
[midiformat]
|
[midiout port 1]


Thanks! Is the same implementation as Logic Keyboard? (http://macprovid.vo.llnwd.net/o43/hub/media/1001/854/step-5.png)
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: dr bu on July 08, 2014, 03:51:32 PM
Quote
For example. I would like to have an app like the piano keyboard you get from logic to use the Apple keyboard sending midi. Is this reachable within MAX?

im not familiar with Logic...do you mean something like this?

...ok i see. well tell me how it works. configuring keys for dynamics/velocity and octaves is easy.
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: Protools5LEGuy on July 08, 2014, 05:10:40 PM
Well tell me how it works. configuring keys for dynamics/velocity and octaves is easy.
The numbers keys are for choosing octave change from lower to higher...
A,S and D keys are for C,D and E notes...W is C sharp and E for D sharp...
Pressing A D and G keys brings a C chord (C, E, G notes)
 
Z is for selecting pianissimo, X piano, ... M for fortissimo. Not sure about + and -

I think Caps Lock or Tab key called for it, enabling you to send midi with the apple keyboard.

Curiously  G key is G note..


Playing piano with this:
(http://archive.arstechnica.com/reviews/4q00/g4cube_cd/images/keyboard-big.jpg)

 is harder than playing a piano keyboard...
(http://t3.gstatic.com/images?q=tbn:ANd9GcQLdiHA4FYWcizuiiyZucgSDYFbdG4nJvH7EMK6NKYh3OdZk_ka-Q)

but this thing seems easier than a piano...
(http://images.teamsugar.com/files/users/1/15111/34_2007/new-apple-keyboard.preview.jpg).

It could be handy to play bass lines or pads... The new keyboard needs minimal pressure to work.

I was thinking to use my black and white keys to make a piano roll on the keyboard combining keys as Zen from http://powerpcliberation.blogspot.com.es/ (http://powerpcliberation.blogspot.com.es/)has made on his logo ...
(http://3.bp.blogspot.com/-Q7-YWldu6MU/UEVdTP_bp8I/AAAAAAAAAHg/r6GuJu0gm2g/s1600/zen.jpg)

Imagine making this with black keys for sharp notes..
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: supernova777 on July 08, 2014, 05:33:23 PM
i have 2 smaller midi keyboards that fit nicely next to a real keyboard
the pcr-30 by edirol
and the mk-225c by evolution (similar to mk-425c)

highly reccommended!
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: Protools5LEGuy on July 08, 2014, 05:36:24 PM
Do you mean something like this?


Thanks!!! 2nd utility born in the MacOS9Lives! era!    :D :D :D :D :D


Can you tell us the process you made to achieve that?

Is that born in MAX with pluggo's Plugmaker or a CodeWarrior app? I can't test nor open sit files at this time...

Please, don't answer only here. I made a separate post for your StandalonePiano http://macos9lives.com/smforum/index.php?topic=1328.0 (http://macos9lives.com/smforum/index.php?topic=1328.0)
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: dr bu on July 09, 2014, 12:06:42 AM
Quote

Can you tell us the process you made to achieve that?

Is that born in MAX with pluggo's Plugmaker or a CodeWarrior app? I can't test nor open sit files at this time...

Please, don't answer only here. I made a separate post for your StandalonePiano

any maxpatch can be turned into an app first saving it as a "collective", then using "applicationinstaller" that lives in the max/msp folder - which i am sure you have installed by now ;)
see the attached pdf tuturial chapter "collectives" :)

oops...now i dont know how to move this post to your new thread
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: dr bu on July 09, 2014, 02:59:01 AM
vst in protools.
 
pluggo has 2 dedicated hosts simply called "Pluggo" (for effects) and "Pluggo synth" (for vsti) made for loading vst-objects into the pluggo-environment. in PT these two dont work, because (as i picked up somewhere) PT dont allow plugins to open popup windows. :'(
 
so, my personal way of dealing with this is to create a different pluggo-object for every vst-object. this is kind of boring work and should be done with scripts but ive been too lazy to learn that. (maybe 110 knows how)

anyway, attached is an example: the "spectral_monkeyage_pi".
for this to work you need to have both max/msp and pluggo installed.
open max and under options->file preferences make sure the folder where you have vstplugins is chosen, because the _pi-object looks up the spectral_monkeyage-vst everytime it opens. i use the vstplugins-folder in the max/msp folder itself.
 
the spectral_monkeyage_pi lives with the other pluggo-plugins in the PT folder. in PT you should now be able to play around with vst! ugly isntit?
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: supernova777 on July 09, 2014, 09:05:31 PM
http://www.soundonsound.com/sos/aug08/articles/max5.htm

heres a more recent article on max
i think max is now (shortly after this article been)
 100% aimed at ableton live!
having been renamed max for live
yes i was right, heres a link:
http://www.soundonsound.com/sos/feb10/articles/maxforlive.htm
http://www.soundonsound.com/sos/may10/articles/livetech_0510.htm

its funny
http://www.soundonsound.com/sos/sep08/articles/monome.htm (controller similar to tenori-on)
looking at this article u can tell they still retain their taste for MAC OS 9 Fonts !!!!!
when they programmed this monome controller, i saw this screen and i was like.. mac os 9???
;)

in fact the whole world wide web had this look in 2001-2002-2003
i miss this:)
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: IIO on July 13, 2014, 03:03:57 PM
Too many... Can you describe US how did you implemented VST on MAX to make hotzz...:D ;D :D ;D :)

max/msp comes with a set of compiled objects, you can also compile your own, or you can build max objects with max by just saving a window with code and recalling it as object by name.

one of the objects coming with MSP is the [vst~] object. it opens the plug-in and you can send it all kind of messages to make it use the plug-in.

i am usually writing my own obejcts which is why it will take a little longer. the other reason is that i simply dont had much time last week. the third reason is that i never work only for one project. i will program and organize this in a way so that all party of it are generalized as much as possible for later reuse of these parts. programming in max is  all about moving things to a symbolic level, then you work on this level, which is like a mirror of your brain and you will speak it like your mother tongue.
Quote
I would like to know how difficult could be to make an VST to MAX adapter, for using VST
using VST effects in a pluggo in pro tools is possible - in theory. in practice it is a very buggy situation, officially hosting VST plug-ins INSIDE pluggo plug-in is not supported and all kind of problems can appear, mainly when the file is loaded, but also when the audio settings are changed or the plug-in is getting disabled. you wont be able to save presets either.

MAS will be impossible inside max you can only host VST. (and later AU)

Quote
How difficult should be to emulate http://www.waves.com/plugins/puigchild-660-670 (http://www.waves.com/plugins/puigchild-660-670) 

such compressors and  filters are using impulse/response beside FIRs and that requires far to much CPU in MSP. for OSX there is a dedicated MSP object for deconvolution, but even that is not perfect.

btw, these waves plug-ins will possibly also not run on a sub 1GHz G4 as native waves plug-in. ;)

Quote
Thanks! Is the same implementation as Logic Keyboard?

rumor has it that the logic "enviroment" is widely based on Max/FTS ( the version of opcode somewhere mentioned here in the thread.) however, it has not been built in max.

if you want to do something with midi and max i will strongly recommend cubase/nuendo or digital performer, they have most solutions supported for pluggo. same with multichannel.

-110




Title: Re: Developing software tools needed to PROGRAM plugs
Post by: IIO on July 13, 2014, 03:12:42 PM
pluggo has 2 dedicated hosts simply called "Pluggo" (for effects) and "Pluggo synth" (for vsti) made for loading vst-objects into the pluggo-environment. in PT these two dont work, because (as i picked up somewhere) PT dont allow plugins to open popup windows. :'(

VST hosts also do not allow to open subwindows. for northpole or mda delay this is no problem, because oyu can learn their 7 parameters by heart, but i dont want to create imposcar patches blindly.

Quote
so, my personal way of dealing with this is to create a different pluggo-object for every vst-object. this is kind of boring work and should be done with scripts but ive been too lazy to learn that. (maybe 110 knows how)

for how many different plug-ins do you do that? and do you need control over the parameters of the hosted VST?

Quote
anyway, attached is an example: the "spectral_monkeyage_pi".

funny that you mention it. monkeyage and northpole were the two VSTs  whhere i´ve built a VST to VST bridge for ... in order to make them stereo. lol.

Quote
because the _pi-object looks up the spectral_monkeyage-vst everytime it opens. i use the vstplugins-folder in the max/msp folder itself.


i have never tried it but it should work to put those VST in the pluggo runtime folder, which is an unlimited, default runtime search path.

we will come back to this at a later point.
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: dr bu on July 13, 2014, 05:50:59 PM
Quote
VST hosts also do not allow to open subwindows.

well, in Cubase my Pluggo-host does open an "open"-window for loading a vstplug or maxpatch, which i dont think is possible in PT. you can also chose if you want to have the original vst-interface or pluggos egg-slider view. i would like to know how thats implemented... and possibly i will find out soon...

Quote
for how many different plug-ins do you do that? and do you need control over the parameters of the hosted VST?
maybe 5 or 10 in my awkward way. and yes i do. i would very much like to have users comments on my "singular pluggo-vst shell" concept, included in reply #15. it should work i both cubase and PT.

Quote
i have never tried it but it should work to put those VST in the pluggo runtime folder, which is an unlimited, default runtime search path.

right. maybe thats better. thats in the systemfolder maxnewbies!
hmm..maybe nobody cares anyway  :(
... i actually put aliases in the runtime folder pointing to externals-folder etc. this way i know installed externals for max will be found by pluggo.
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: IIO on July 14, 2014, 07:27:06 AM
Quote
well, in Cubase my Pluggo-host does open an "open"-window for loading a vstplug or maxpatch

oh i see.

well, why you are using a dialog then? you can use an umenu, allow to enter text, or you can use drag and drop, which would be my preferred method.

and as you know, when it is restricted to only one plug-in, you can load that on loadbang. (i would recommend against using the plug-in name as argument as i have bad experience with that.)

Quote
you can also chose if you want to have the original vst-interface or pluggos egg-slider view. i would like to know how thats implemented... and possibly i will find out soon...

if you investigate that you will only find out that the pluggo shell is not written in max/msp and not using the vst~ object. :D

this is why ... see above.

Quote
maybe 5 or 10 in my awkward way.

if it is 5-10 it seems in order to create individual pluggos.

for a dynamic host you will not be able to save the current VST plug-in as parameter anyway since chuncks are not supported by pp & runtime.


Quote
right. maybe thats better.

yea, or aliases, vst~ does not care where a file is.

what i also do (here in the default vst plug-ins folder of the max/msp app) is that i rename the VSTs so that they dont have spaces in their names. makes loading easier in some situations. :)

so i have sent you a bunch of about 1200 110-patches this morning, enough to keep you for 2 weeks busy.


-110



Title: Re: Developing software tools needed to PROGRAM plugs
Post by: IIO on July 18, 2014, 04:07:40 AM
uploaded my current max abstractions to the FTP, too, upon request by one of you.
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: Protools5LEGuy on July 18, 2014, 10:15:04 PM
uploaded my current max abstractions to the FTP, too, upon request by one of you.
Thanks!
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: supernova777 on July 18, 2014, 10:23:29 PM
the max installation really needs to be packaged with proper installation instructions included in the actual download
the installation should be explained clearly + simply

same goes for any other plugin or software package that we are uploading with the intention of others using it..
not everyone will have the proper forum post open to read the instructions
not including proper installation details will cause anyone who tries to open it confusion
making it more of a curse then a blessing

Title: Re: Developing software tools needed to PROGRAM plugs
Post by: supernova777 on July 22, 2014, 05:15:11 AM
http://www.soundonsound.com/sos/sep09/articles/vstdiy.htm

i posted this link in another thread.. osx info but maybe someone can benefit from it for os9 too
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: Protools5LEGuy on July 22, 2014, 02:40:45 PM
the max installation really needs to be packaged with proper installation instructions included in the actual download
the installation should be explained clearly + simply
On http://cycling74.com/downloads/older/ (http://cycling74.com/downloads/older/)
You have to download Max/MSP 4.1,Released 8/19/2002 for Mac OS 9. Not compatible with OS 10+
The package called Max/MSP 4.1 with documentation (14.6 MB) http://cycling74.com/download/max4msp241all.sit (http://cycling74.com/download/max4msp241all.sit)
Quote
this app is fully functional but in 30 day demo mode.
[suspicious]now in my Dr Bu folder at the server you will find the ILokdestroyer, which after a self explanatory install resets the max demo clock to day zero by "Zap authorisations". 110 told me you could encounter problems if you had some real ILok authorisations, but i dont.

Jitter is Max videoinclined sister. i dont know much about it. But some maxpatches will require it (or parts of it). If you want to use Jitter replace the Jitlib inside the installed max/msp folder with the Jitlib [k], also present in my misc folder. for some reason Jitter is in demo mode... but it works. Max/Msp is a challenge man![/suspicious]

We can download object from http://maxobjects.com/ (http://maxobjects.com/)

It is not clear if to use 3.0.3 pluggo or macintosh garden 3.0.4...


the install instructions shoudl be clear enough though: install max4 demo and use it

when you look into the maxmsp program and you feel lost i can give you a little introduction to it.  the most difficult in the beginning is that you dont know about paths, objects, key commands, how to save stuff and so on ... well like ith most programs when you are new to it. :)

Title: Re: Developing software tools needed to PROGRAM plugs
Post by: supernova777 on August 01, 2014, 08:36:29 PM
(http://web.archive.org/web/20021027181557/http://creativesynth.com/tutorials/004_SynthBuildingMSP/data_01/img_03.gif)
http://web.archive.org/web/20021016234259/http://creativesynth.com/subgroups/MaxZone.html
great tutorials here for max/msp

perhaps we need to start a zone of our site for MAX/MSP
to collect all articles + infos

if that was the case this page ive linked above links to alot of other resources we could use to make that
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: IIO on August 02, 2014, 02:12:19 AM
i maintain the unofficial pluggo group here https://groups.yahoo.com/neo/groups/pluggo/ , the official pluggo forum is closed since years .... but i think it is still available somewhere hidden at cycling74 ... (used to be at /3) ... just search there to find tons of stuff if you are stuck with the tutorials.
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: supernova777 on August 02, 2014, 02:14:25 AM
i maintain the unofficial pluggo group here https://groups.yahoo.com/neo/groups/pluggo/ , the official pluggo forum is closed since years .... but i think it is still available somewhere hidden at cycling74 ... (used to be at /3) ... just search there to find tons of stuff if you are stuck with the tutorials.

COOL thanks for contributing something useful for once;)

http://www.soundonsound.com/sos/may10/articles/livetech_0510.htm
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: Protools5LEGuy on August 05, 2014, 02:55:41 PM
I am not sure if it is related to the post but here is some info from Apple about developing for OS 9
http://web.archive.org/web/20090330202327/http://developer.apple.com/technotes/tn/tn1176.html (http://web.archive.org/web/20090330202327/http://developer.apple.com/technotes/tn/tn1176.html)
Quote
changes and corrections in the next generation of Mac OS

Also
Packages in Mac OS 9. The Package Flag
This Technote describes how the Finder implements packages in Mac OS 9. Developers interested in creating packages for use in Mac OS 9 can use this document as a guide for creating packages
http://web.archive.org/web/20090706120103/http://developer.apple.com/technotes/tn/tn1188.html (http://web.archive.org/web/20090706120103/http://developer.apple.com/technotes/tn/tn1188.html)

Some kind of Index for the "carbon" tag http://web.archive.org/web/20041012202306/http://developer.apple.com/technicalnotes/LegacyTechnologies/idxCarbon-date.html (http://web.archive.org/web/20041012202306/http://developer.apple.com/technicalnotes/LegacyTechnologies/idxCarbon-date.html)

Technical notes http://web.archive.org/web/20040830210024/http://developer.apple.com/technicalnotes/index.html (http://web.archive.org/web/20040830210024/http://developer.apple.com/technicalnotes/index.html)


Title: Re: Developing software tools needed to PROGRAM plugs
Post by: Protools5LEGuy on August 05, 2014, 04:42:37 PM
Introduction to Moving CodeWarrior Projects to Xcode http://web.archive.org/web/20040221114934/http://developer.apple.com/documentation/DeveloperTools/Conceptual/MovingProjectsToXcode/index.html (http://web.archive.org/web/20040221114934/http://developer.apple.com/documentation/DeveloperTools/Conceptual/MovingProjectsToXcode/index.html)

We should "reverse engineering" this doc. We can be more interested in moving Xcode Projects to CodeWarrior.

http://web.archive.org/web/20030419070852/http://developer.apple.com/techpubs/macos8/mac8.html (http://web.archive.org/web/20030419070852/http://developer.apple.com/techpubs/macos8/mac8.html)
Mac OS 8 and 9 developer documentation

Devices http://web.archive.org/web/20011116093153/http://developer.apple.com/technotes/indexes/dev-a.html (http://web.archive.org/web/20011116093153/http://developer.apple.com/technotes/indexes/dev-a.html)
Hardware http://web.archive.org/web/20011115003148/http://developer.apple.com/technotes/indexes/hw-a.html (http://web.archive.org/web/20011115003148/http://developer.apple.com/technotes/indexes/hw-a.html)
PCI Devices http://web.archive.org/web/20010818124124/http://developer.apple.com/hardware/pci/index.html (http://web.archive.org/web/20010818124124/http://developer.apple.com/hardware/pci/index.html)


Open Firmware
Part 1 user interface http://web.archive.org/web/20020202141701/http://developer.apple.com/technotes/tn/tn1061.html (http://web.archive.org/web/20020202141701/http://developer.apple.com/technotes/tn/tn1061.html)
Part 2 the device tree http://web.archive.org/web/20011021132332/http://developer.apple.com/technotes/tn/tn1062.html (http://web.archive.org/web/20011021132332/http://developer.apple.com/technotes/tn/tn1062.html)
Debugging Open Firmware using TelNet http://web.archive.org/web/20010816015750/http://developer.apple.com/technotes/tn/tn2004.html (http://web.archive.org/web/20010816015750/http://developer.apple.com/technotes/tn/tn2004.html)
Debugging with TelNet 2 http://web.archive.org/web/20021019081909/http://developer.apple.com/technotes/tn/tn2023.html (http://web.archive.org/web/20021019081909/http://developer.apple.com/technotes/tn/tn2023.html)


Also this could be handy cause some software developers try to find the unique serial for a Mac http://web.archive.org/web/20011015113735/http://developer.apple.com/technotes/tn/tn1103.html (http://web.archive.org/web/20011015113735/http://developer.apple.com/technotes/tn/tn1103.html)
Title: MPW, Carbon and building Classic Mac OS apps in OS X
Post by: Protools5LEGuy on January 24, 2015, 11:09:34 PM
http://blog.steventroughtonsmith.com/post/109040361205/mpw-carbon-and-building-classic-mac-os-apps-in-os (http://blog.steventroughtonsmith.com/post/109040361205/mpw-carbon-and-building-classic-mac-os-apps-in-os)
Quote
In 2014 I came across a project on Github described as “Macintosh Programmer’s Workshop (mpw) compatibility layer”.

There has never been a good way to compile Classic Mac OS apps on modern OS X - for the most part, you were stuck using ancient tools, either Apple’s MPW or CodeWarrior, running in a VM of some sort. CodeWarrior, of course, is not free, and MPW only runs on Classic Mac OS, which is unstable at the best of times and downright nightmarish when trying to use it for development in an emulator like SheepShaver.

(http://media.tumblr.com/e5469481776faea6dcdb740d9098d742/tumblr_inline_nip9h2tyH21qzq1wo.jpg)
https://github.com/ksherlock/mpw (https://github.com/ksherlock/mpw)

Quote
Final Thoughts

I am incredibly psyched about mpw. Its developer, ksherlock, has been very responsive to everything I’ve come up against as I stress test it against various tools and projects.

Right now it’s a fully usable tool that makes Classic Mac OS compilation possible and easy to do on modern versions of OS X, without requiring emulators or ancient IDEs or the like. To my knowledge, this is the first time this has been possible (excluding legacy versions of CodeWarrior).

I have used this toolset to build all kinds of things, including fun ports of my own apps. I’m sure I’ll be coming back to it for a long time to come.

I’m hoping I’m not the only person who’ll ever get to use it :-)

A new age of OSX tools converted to OS9 is coming!

Who has the guts to compile Ardour for OS9 with this?
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: Protools5LEGuy on December 13, 2015, 07:38:12 PM
https://developer.apple.com/legacy/library/documentation/Carbon/Conceptual/carbon_porting_guide/carbonporting.pdf (https://developer.apple.com/legacy/library/documentation/Carbon/Conceptual/carbon_porting_guide/carbonporting.pdf)

This document has helped me to understand what ways where used for developers Since OS8 to OSX. The concept of Carbon API and Core Foundation

Page 42
Quote
Using CodeWarrior to Build a CFM Carbon Application

This is the most likely scenario if you’re porting an existing Mac OS 9 application to Carbon, especially if you’re
already using CodeWarrior. You’ll continue to use the Mac OS development tools and processes you’re familiar
with, and you’ll create CFM applications that can run on both Mac OS 9 and Mac OS X. The only difference is
that you’ll include the CarbonLib stub library in your CodeWarrior project.

Using CodeWarrior to Build a Mach-O Carbon Application

Metrowerks CodeWarrior Pro version 8.0 and later has support to build Mach-O applications on Mac OS 9, as
well as build and debug applications on Mac OS X. If you have a second computer, you may also want to
investigate whether Metrowerks’ two-machine debugger suits your needs, as it can debug CFM applications
on both platforms. Contact Metrowerks for information about these products.

Using Project Builder to Build a Mach-O Carbon Application

Project Builder is Apple’s integrated development environment (IDE) for Mac OS X. It offers a comprehensive
feature set that includes source-level debugging. Project Builder is a good choice if your application will run
only on Mac OS X, and you want to take advantage of features available only on that platform. However, you
can’t use Project Builder to build a CFM application, so if you want your program to run on both platforms
you’ll either need to use CodeWarrior or other tools to create a CFM version for Mac OS 9.
See the Project Builder online help documentation for more information about creating Mach-O Carbon
applications.

Building a CFM Carbon Application With CodeWarrior

If you plan to use Metrowerks CodeWarrior, CodeWarrior Pro version 8.0 or later is recommended. You can run
CodeWarrior natively on Mac OS 9 or Mac OS X.

I searched a bit and it took me to CodeWarrior®Targeting Mac OS

http://web.uvic.ca/~ncs/406/HTML/Targeting_MacOS/ (http://web.uvic.ca/~ncs/406/HTML/Targeting_MacOS/)
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: Jakl on December 14, 2015, 03:31:36 AM
Well here you go all you programmers - the VSTSDK you all wanted. Both the same, one as a .sit (stuffit 703, OS9) and one as a .zip from 10.4.11.
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: IIO on December 14, 2015, 10:13:00 AM
This document has helped me to understand what ways where used for developers Since OS8 to OSX. The concept of Carbon API and Core Foundation

you are supposed to use CW 5.x for VST and MAS development - and better forget about carbon if OS9 is the target for your app ... to many problems. ;)
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: geforceg4 on September 24, 2016, 08:16:41 PM
if macos9lives is serious about taking macos9 to the next level.. why not post these SDK's a bit more prominently on the site? so that programmers can actually see them + get their feet wet inventing some new basic VSTs?

not sure what version it is that JAKL has posted here, but theres also some other downloads here : http://macos9lives.com/smforum/index.php/topic,1700
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: geforceg4 on September 25, 2016, 06:04:31 AM
if anyone knows java.
this might help:
http://web.archive.org/web/20040121175500/http://sourceforge.net/projects/jvstwrapper/
http://www.kvraudio.com/product/jvstwrapper_by_daniel309/details
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: DieHard on September 25, 2016, 08:44:07 PM
Quote
if macos9lives is serious about taking macos9 to the next level.. why not post these SDK's a bit more prominently on the site? so that programmers can actually see them + get their feet wet inventing some new basic VSTs?

I hate to say it, but with the plethora of good solid plugins in OS 9... I don't think there is much that has not already been done.

The virtual keyboard (that utilizes a standard Mac keyboard) was awesome because it filled a need... MIDI data could be sent to a VSTi that had no keyboard of it's own from a Mac that also had no external controller connected to it.

Rather than re-invert the wheel and program more plugins, I would love to see other users create ASR images that could be downloaded by beginners to setup full turnkey DAW systems... I did one for Cubase... it would be great to have one for ProTools with Plugins and also one for Logic.
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: geforceg4 on September 25, 2016, 09:13:15 PM
if one could program a vst plugin for mac os 9 it would be a good entry level opportunity to get into doing it professionally for osx + other os'es. obviously this doesnt apply to the general population but rather special combination of skills + talents ie: individuals with programming experience aswell as creativity + historical knowledge.

my opinion is the opposite also regarding the virtual keyboard... as i have plenty of midi keyboards + i dont see how someone could really "PLAY" with a keyboard, especially if someone is a keyboardist who has trained all his or her life using keys, they would kind of laugh at using a mac g4 keyboard to jam. but hey, alot of people arent trained keyboardists... but id still say hey! get yourself a cheap 10$ midi keyboard pal!!!!! lol

anyways. the point is.. the TOOLS that were used STILL EXIST. its still possible to PROGRAM + CREATE NEW SOFTWARE whether that is vst plugins or otherwise. i think its worthwhile to collect those tools here for the sake of creating an opportunity for a select few people.
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: DieHard on September 25, 2016, 09:17:29 PM
Quote
anyways. the point is.. the TOOLS that were used STILL EXIST. its still possible to PROGRAM + CREATE NEW SOFTWARE whether that is vst plugins or otherwise. i think its worthwhile to collect those tools here for the sake of creating an opportunity for a select few people.

I guess that is a good point... we should at least collect and post the tools for anyone that wants to dive into such an endeavor.
Yes, the tools may actually be easier to get now that we have access to people that used them when they were "Top Secret" and not available in the wild
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: MacTron on September 26, 2016, 12:33:01 PM
This document has helped me to understand what ways where used for developers Since OS8 to OSX. The concept of Carbon API and Core Foundation

you are supposed to use CW 5.x for VST and MAS development - and better forget about carbon if OS9 is the target for your app ... to many problems. ;)

Yes it is. Carbon is a pain in the ass.
... and notice that those SDK are in C++ (not C ) to make things even harder.
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: rvense on October 17, 2016, 10:57:08 PM
One thing I'd like to see available is the ASIO SDK for writing sound card drivers.
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: nanopico on October 18, 2016, 06:53:00 AM
One thing I'd like to see available is the ASIO SDK for writing sound card drivers.

Stienberg removed the older version with the libraries and headers for OS 9 development some time ago.  I did manage to save them prior to that, but I can't recall where I put them.  I will do a little search of where I think they are and post them if I find them.
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: geforceg4 on October 18, 2016, 04:19:00 PM
according to  this comment asio sdk v2.3 drops support for mac os 8/9 so u need to use asio sdk v2.2 or below
https://github.com/thestk/rtaudio/issues/16#issuecomment-44380409 (https://github.com/thestk/rtaudio/issues/16#issuecomment-44380409)

collecting more info on v2.2
http://read.pudn.com/downloads119/sourcecode/multimedia/audio/506331/ASIOSDK2/ASIO%20SDK%202.2.pdf (http://read.pudn.com/downloads119/sourcecode/multimedia/audio/506331/ASIOSDK2/ASIO%20SDK%202.2.pdf)

possibly even lower may be desired as it looks like 2.2 dates to 2006... so u may want 2.1 or 2.0 version even
http://www.steinberg.net/en/company/press/archive/steinberg_press_room_archiv_2006/steinberg_asio_22_standard.html (http://www.steinberg.net/en/company/press/archive/steinberg_press_room_archiv_2006/steinberg_asio_22_standard.html)

heres 2.1 documentation:
https://www.scribd.com/document/14562218/9-ASIO-SDK-2-1 (https://www.scribd.com/document/14562218/9-ASIO-SDK-2-1)

additionally i went to this address:
http://www.steinberg.net/sdk_downloads/asiosdk2.3.zip (http://www.steinberg.net/sdk_downloads/asiosdk2.3.zip)
and i simply changed the 2.3.zip filename url to be "2.2.zip" and it worked just the same to download the file so it looks like the file is posted but not linked!


see for yourself:
http://www.steinberg.net/sdk_downloads/asiosdk2.2.zip (http://www.steinberg.net/sdk_downloads/asiosdk2.2.zip)
not sure if this is mac os 8/9 compatible tho
2.1 + 2.0 are NOT posted however


Quote
ASIO 2.2 SDK Contents
---------------------

readme.txt                   - this file
changes.txt                  - contains change information between
                               SDK releases
ASIO SDK 2.2.pdf             - ASIO SDK 2.2 specification
ASIO Licensing Agreement.rtf - Licencing Agreement
mac.sea.hqx                  - Macintosh CodeWarrior Pro 5 Projects
                               After de-Binhexing and Unstuffing the
                               mac folder should be on this same directory level


common:
asio.h                 - ASIO C definition
iasiodrv.h             - interface definition for the ASIO driver class
asio.cpp               - asio host interface (not used on Mac)
asiodrvr.h
asiodrvr.cpp           - ASIO driver class base definition
combase.h
combase.cpp            - COM base definitions (PC only)
dllentry.cpp           - DLL functions (PC only)
register.cpp           - driver self registration functionality
wxdebug.h
debugmessage.cpp       - some debugging help

host:
asiodrivers.h
asiodrivers.cpp         - ASIO driver managment (enumeration and instantiation)
ASIOConvertSamples.h
ASIOConvertSamples.cpp  - sample data format conversion class
ginclude.h              - platform specific definitions

host/mac:
asioshlib.cpp          - asio.cpp for the Mac, resolves the symbols
codefragments.hpp
codefragments.cpp      - code fragment loader

host/pc:
asiolist.h
asiolist.cpp           - instantiates an ASIO driver via the COM model

host/sample:
hostsample.cpp         - a simple console app which shows ASIO hosting
hostsample.dsp         - MSVC++ 5.0 project
hostsample.vcproj      - Visual Studio 2005 project (32 and 64 bit targets)

driver/asiosample:
asiosmpl.h
asiosmpl.cpp           - ASIO 2.0 sample driver
wintimer.cpp           - bufferSwitch() wakeup thread (Windows)
asiosample.def         - Windows DLL module export definition
mactimer.cpp           - bufferSwitch() wakeup thread (Macintosh)
macnanosecs.cpp        - Macintosh system reference time
makesamp.cpp           - Macintosh driver object instantiation

driver/asiosample/asiosample:
asiosample.dsp         - MSVC++ 5.0 project
asiosample.vcproj      - Visual Studio 2005 project (32 and 64 bit targets)

so i guess Codewarrior 5 is what u want to use in combination with this 2.2 SDK!!!!
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: rvense on October 19, 2016, 12:05:04 PM
Thanks for that. I also found the OMS driver SDK (for writing new drivers for MIDI devices) on here.  An obvious thing to look at would be drivers for class-compliant USB audio and MIDI devices.
Title: code warrior 8
Post by: devils_advisor on June 18, 2017, 08:33:23 PM
Can this be installed and used in os9? Or is it more os x and you can compile carbon?


http://macintoshgarden.org/apps/codewarrior-pro-8x


i tried a different version before and on boot metro crashed every time,  thats the debugger extension.
Title: Re: code warrior 8
Post by: Daniel on June 18, 2017, 08:42:55 PM
Metro has always crashed for me. I just remove it. I have no idea if I am doing it wrong.

It looks like Codewarrior 8 works on Mac OS 9, but it is primarily designed for OSX. This probably means that you can't program in Pascal or compile for 68k.
Title: Re: code warrior 8
Post by: MacTron on June 19, 2017, 06:10:56 AM
Can this be installed and used in os9? Or is it more os x and you can compile carbon?
...
i tried a different version before and on boot metro crashed every time,  thats the debugger extension.

I have used it few years ago,for a couple of projects. It was running in a MDD with Mac Os 9.2.2 without issues.

CW8 can compile carbon and classic apps, and it can run In Mac Os 9 (and Os X IIRC)
Title: Re: code warrior 8
Post by: IIO on June 19, 2017, 04:11:45 PM

it really, really depends on what you want to do.

if carbon ist your main target you should probably use the last version available for OS9.

for VST plug-ins you´d prefer CW 5.x, and for photoshop plug-ins you´d prefer CW 3.x ...
Title: Re: code warrior 8
Post by: madalynmcworm on September 23, 2017, 03:39:46 PM
I haven't fully verified yet, but as far as I can tell, the compilers for each system are plugins.
I currently have the 68k compiler and the pascal compiler installed on my dev laptop. I can test them this week if you'd like. The options are all there, just haven't really built anything to see.

It seems stable enough to write code. I've written a crappy tetris clone and it builds fine. The UI is a little...wonky? It doesn't behave how I'd expect, but it does work.

I've tried all the Think C products and can get none of them to work on mac os 9. They will run but crash / take the entire system down with it.
Title: Re: code warrior 8
Post by: OS923 on October 16, 2017, 01:13:47 AM
In my experience, older things like INITs are best made with older compilers. I use CWPro3 for this. For the rest I use CWPro 5 because I want to keep bundles on my computer at a minumum.
Title: Top 5 OS 9 Developer Tools? Plus questions
Post by: Jubadub on November 14, 2017, 04:25:39 PM
Hey y'all, I've lately been keen on developing OS 9 software (and lower, and up to OS X 10.5.8 PPC) of all kinds for all sorts of purposes, and while I'm mostly familiar with GNU/Linux and Windows tools (depressingly), I deeply desire to be much more familiar with PowerPC Mac OS tools for software deployment.

So, I figured it'd be nice and wise to ask all of you, most of whom are much better-acquainted with this than me, what you consider to be your top 5 software development IDEs, compilers, toolchains and such. And yes, text editors also count, especially those that come with some form of intellisense. Also, it doesn't necessarily need to be a "top 5": it can be a top 3, top 10, 20 or even 100, whatever you think is best! Ranking them in order of preference or not is also entirely up to you. Absolutely any programming language is accepted, even PowerPC assembly, no matter which specific PowerPC assembly language (i.e.: PowerPC 970MP). Non-default tools for AppleScript could be cool to know about, as well.

My main focus and preference are tools that can run on at least Mac OS 9.2.2, but I would still be VERY glad to learn of options even if they are OS-X-exclusive (up to 10.5.8 Leopard Client / 10.5.8v1.1 Leopard Server, PowerPC only). Also, if some particular tool for some reason only works with System 7 or so, if you believe it to be any good, please, do share your knowledge on it, as well.

I believe the number 1 choice must be CodeWarrior (not sure what versions specifically, though, especially considering each Mac OS version), but I was wondering if the GNU-GCC toolchain was also available for OS 9. Also, I have read some guy at IBM ported Node.js over to PowerPC (or just POWER?) machines, but I haven't yet looked into it with much detail.
Also, I figure there must be some IDE for Java (do NetBeans or Eclipse for PowerPC exist?), but I haven't yet dedicated myself to looking that up yet, either.

Viva PowerPC! Viva Mac OS 9! ;D
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: nanopico on November 14, 2017, 07:00:07 PM
Here is what I use

MPW  Closest thing to GNU Unix/Linux.  Has all the tools you need. Pretty good help built in.  A bit of a learning curve though.  Has source control built in. Can actually build OS X apps using carbon with some limitations on what version of OS x.
Resedit
Hexedit

Not a fan of codewarrior.  To confusing to my brain.  It relies on parts of MPW.

I'm sure the node.js was ported to IBM's OS tools and servers and not Mac PPC machines/OS
I haven't used java in a long time, but I recall some sort of Java IDE for OS 9.
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: macStuff on November 14, 2017, 08:02:52 PM
bbedit was always a popular choice for a text editor https://www.macintoshrepository.org/2213-bbedit-7-1-4
(https://web.archive.org/web/20031202030936im_/http://www.barebones.com:80/images/bbedit71-title.gif)
Quote
BBEdit is a powerful general-purpose text editor with a strong Macintosh heritage. Although it’s useful for a wide variety of tasks, many of the features are designed specifically for Web developers and programmers.
http://atpm.com/8.12/bbedit.shtml

https://web.archive.org/web/20031202031053/http://www.barebones.com:80/products/bbedit/index.shtml
https://web.archive.org/web/20031202030936/http://www.barebones.com:80/products/bbedit/new.shtml
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: macStuff on November 14, 2017, 08:20:33 PM
https://www.macintoshrepository.org/1896-apple-developer-cd-collection
is this of any use?
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: macStuff on November 14, 2017, 08:28:38 PM
https://www.macintoshrepository.org/1556-codewarrior-10-gold
https://web.archive.org/web/20061210025957/http://www.freescale.com/webapp/sps/site/overview.jsp?nodeId=01272694011612

according to this info, CodeWarrior was discontinued in May 2006 with v10 being the last Version..

which is hilarious because next thing i scroll to is:
https://www.macintoshrepository.org/1651-codewarrior-11-academic-gold-
lol
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: macStuff on November 14, 2017, 08:40:37 PM
https://www.macintoshrepository.org/1499-realbasic-5-5-5
(https://www.macintoshrepository.org/_resize.php?w=640&h=480&bg_color=333333&imgenc=ZmlsZcd4XMvbWcvc2l0ZXMvbWcvZmlsZXMvc2NyZWVuc2hvdHMvcmVhbGJhc2ljLmpwZw%3D%3D)
https://web.archive.org/web/20031209113552/http://www.realsoftware.com:80/company/pressreleases/pr_rb5_1mac.html
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: MacTron on November 15, 2017, 07:01:54 AM
Despite I can't be considered a developer, I have used a few developing tools from the early years, Think C, Think Pascal, MS Basic, MPW, Realbasic, CodeWarrior, Xcode ...
The only one that I loved so much was Think Pascal. Besides that I will recomed CodeWarrior Pro 5 for "classic" aplicantions. CW Pro 8 is best switable for Carbon Apps, but this apps usually have less performance, suspassed only  by ReaBasic apps ...
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: Jubadub on November 15, 2017, 07:06:39 AM
Yes, all of those count, thank you all! :D

I also looked around, and saw that the PPC Node.js port indeed was only for PowerLinux and AIX (as nanopico suggested), but that with some tweaking, it should compile and work pretty well on OS X, as well, particularly Leopard, or so said the main project coordinator of the port. "Today, no one has done the work to support OSX with the PPC code. If you're running Linux on a G5 then things work. This is something that probably just needs a little effort to sort out the GYP files etc. Much easier than dealing with the assembly stuff."
https://github.com/ibmruntimes/v8ppc/issues/114
https://github.com/ibmruntimes/node/issues/14
https://github.com/ibmruntimes/node/issues/36
Aside from the V8 and Node.js porting efforts, there is also the fact that Node.js supported Mac OS X on Intel only starting with 10.6 Snow Leopard, even though Intel versions existed for 10.4 Tiger and 10.5 Leopard, so someone suggested some extra Node.js code-tweaking not pertaining to the PPC platform could be done to port Node.js first to Intel 10.5 Leopard, and THEN PowerPC 10.5 Leopard.
https://github.com/ibmruntimes/v8ppc/issues/97
https://groups.google.com/forum/#!topic/nodejs/ivGMr-C_m1Y

In any case, this is plenty for me to start with and sort out. :) Truly thank you all again! All of that was extremely helpful! And cool that some form of BASIC is there, I figured something would pop up for that, as well. ;D


Now, specific question: What could be the best way to make PPC assembly programs? All I have found so far are C compilers, which allow you to directly "inject" assembly code, but I figure there might be other, better ways. Maybe something that doesn't rely on any C compiler at all?

Perhaps I should clarify that the main reason I find PPC assembly interesting is because we likely won't see any new Mac-compatible new PowerPC processor released out there, even though POWER9 is coming out soon (the latest PowerPC processor used on the latest 3 G5s, the PowerPC 970MP, was based on a combination of POWER4 and VMX, the latter also being known as AltiVec (Motorolla) and Velocity Engine (Apple)). This means I don't have the usual concern we devs have of our assembly code becoming less efficient than equivalent C code being recompiled for a better processor, with the compiler making use of all the new features thereof.

Another reason is that one guy at MacRumors recently suggested there is something you can do with PowerPC assembly code that C compilers wouldn't exploit, as it was an extra feature not at all common in most processor architectures: https://forums.macrumors.com/threads/running-snow-leopard-on-a-powerpc-mac.2058856/page-2#post-24916820
"It's also worth saying that the PowerPC ISA has in fact reverse byte-order load-store instructions. But C/C++ compilers aren't taking any advantage from them because they're not implemented on most CPU architectures. Only solution would have been assembly-level."
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: nanopico on November 15, 2017, 02:58:36 PM
Now, specific question: What could be the best way to make PPC assembly programs? All I have found so far are C compilers, which allow you to directly "inject" assembly code, but I figure there might be other, better ways. Maybe something that doesn't rely on any C compiler at all?

Perhaps I should clarify that the main reason I find PPC assembly interesting is because we likely won't see any new Mac-compatible new PowerPC processor released out there, even though POWER9 is coming out soon (the latest PowerPC processor used on the latest 3 G5s, the PowerPC 970MP, was based on a combination of POWER4 and VMX, the latter also being known as AltiVec (Motorolla) and Velocity Engine (Apple)). This means I don't have the usual concern we devs have of our assembly code becoming less efficient than equivalent C code being recompiled for a better processor, with the compiler making use of all the new features thereof.

The assembler in MPW is the only one I know if you are working OS 9 or older.  I haven't looked at any other assemblers for OS X or other *nix.

What OS/context would the resulting program written in assembly be running?

"It's also worth saying that the PowerPC ISA has in fact reverse byte-order load-store instructions. But C/C++ compilers aren't taking any advantage from them because they're not implemented on most CPU architectures. Only solution would have been assembly-level."
Yeah it's pretty cool that it can execute in big or little endian mode.  I was pretty sure the G5 could do the switch. As far as VPC goes they may not have done the switching because of the way the memory management worked in the CPU.  Not sure I never really went into that much more than reading the specs of the PowerISA. 
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: Jubadub on November 15, 2017, 05:22:03 PM
Wow, so MPW which you recommended earlier can even work with assembly?! Awesome!!!! I will probably check that before all else! :D

What OS/context would the resulting program written in assembly be running?
I haven't set my mind on anything specific for that yet, but whatever I make, it will definitely be running on Mac OS, with a preference for OSes 9.2.2, 10.4.11 and 10.5.8, and the G3, G4 and G5 processors. For now, though, it's more of a curiosity thing than any big project. But in order to even be able to come up with anything cool or useful, I first seek to get familiar with the assembly language(s).
Oh, also, what I'm about to say isn't necessarily exclusive to assembly, but whatever I make, one huge aim would be to make the application make the most out of multiple processors/cores (if more than one is available, that is -- I certainly wouldn't abandon all the amazing single-processor single-core Macs out there!), especially considering the lack of multi-threaded programs for Mac OS 9. Are there other programs for OS 9 besides Photoshop that make use of multiple threads?

Yeah it's pretty cool that it can execute in big or little endian mode.  I was pretty sure the G5 could do the switch. As far as VPC goes they may not have done the switching because of the way the memory management worked in the CPU.  Not sure I never really went into that much more than reading the specs of the PowerISA.
I'd love to see and verify all of that first-hand for myself, too. I have done much reading, but never actually spent time doing any assembly code (I'm mostly accostumed to high-level languages, so I'm in for... quite a scary, yet awesome, treat!). Hopefully I won't fry too many chips! ::)


EDIT: Almost forgot: I discovered another text-editing program for anyone interested, as well. It seems it was rather famous back in the day... It's Text-Edit Plus. Used to be shareware, but now it is 100% freeware.
https://www.tex-edit.com/
And some scripts to enhance it, all done with AppleScript (some being classic Mac OS exclusive, others X exclusive, but most of them work for both).
https://dougscripts.com/texedit/scrpcont.php
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: macStuff on November 15, 2017, 08:27:48 PM
i was just browsing the results of the "Development tools" section on the macintosh repository:
https://www.macintoshrepository.org/applications/?c=11&p=1

https://www.macintoshrepository.org/7327-script-debugger-3-0-9
is this for applescript debugging?

https://www.macintoshrepository.org/777-symantec-think-c-c-8-6
is this worth checking out? c++ on the mac?
(https://www.macintoshrepository.org/_resize.php?w=640&h=480&bg_color=333333&imgenc=ZmlsZf11XMvbWcvc2l0ZXMvbWcvZmlsZXMvc2NyZWVuc2hvdHMvc3ltYzg2ZGlzYy5wbmc%3D)
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: macStuff on November 15, 2017, 08:51:29 PM
https://www.macintoshrepository.org/10221-macromedia-director-8-shockwave-studio
https://www.macintoshrepository.org/177-macromedia-flash-5
https://www.macintoshrepository.org/6420-adobe-photoshop-5-5
https://www.macintoshrepository.org/2075-adobe-illustrator-7

these were some of the greatest creative tools, pure nostalgia to revisit them!
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: nanopico on November 16, 2017, 06:08:08 AM
Yeah it's pretty cool that it can execute in big or little endian mode.  I was pretty sure the G5 could do the switch. As far as VPC goes they may not have done the switching because of the way the memory management worked in the CPU.  Not sure I never really went into that much more than reading the specs of the PowerISA.
I'd love to see and verify all of that first-hand for myself, too. I have done much reading, but never actually spent time doing any assembly code (I'm mostly accostumed to high-level languages, so I'm in for... quite a scary, yet awesome, treat!). Hopefully I won't fry too many chips! ::)

In the G5 the memory manager in the CPU is always 64 bit.  When the CPU runs in 32bit mode it only uses half the address.  When you switch the endianness there are issues. 
I believe when you switch to little endian the internals of the MMU don't actually switch so now you are always getting zero. Normally not a problem, but I am assuming that VPC would be doing some sort of very low level manipulation where this could become a problem.  I may be talking through my ass though.  I have not dealt with this functionality before.  Just what I read from PowerISA and spec sheets for the Power architecture.

And MPW is a collection of tools. It is an IDE. The last versions came with assembly, c and c++ compilers for both PPC and 68k.  The pascal compiler could be added separate. Early versions include pascal.  The later versions of the c & c++ compilers where created by symantic.
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: Naiw on November 18, 2017, 06:11:31 PM
https://www.macintoshrepository.org/1556-codewarrior-10-gold
https://web.archive.org/web/20061210025957/http://www.freescale.com/webapp/sps/site/overview.jsp?nodeId=01272694011612

according to this info, CodeWarrior was discontinued in May 2006 with v10 being the last Version..

which is hilarious because next thing i scroll to is:
https://www.macintoshrepository.org/1651-codewarrior-11-academic-gold-
lol

No the only this that makes this confusing is that Metrowerks changed their versioning scheme a few times, first they introduced Code Warrior Pro 1 etc (Which was really CW 16 or something similar)
Then they also introduced Code Warrior Development Studio (but retained the numbering scheme).

CW Pro / Dev Studio 10 was indeed the last version.
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: Naiw on November 18, 2017, 06:32:31 PM
Yeah it's pretty cool that it can execute in big or little endian mode.  I was pretty sure the G5 could do the switch. As far as VPC goes they may not have done the switching because of the way the memory management worked in the CPU.  Not sure I never really went into that much more than reading the specs of the PowerISA.

In the G5 the memory manager in the CPU is always 64 bit.  When the CPU runs in 32bit mode it only uses half the address.  When you switch the endianness there are issues. 
I believe when you switch to little endian the internals of the MMU don't actually switch so now you are always getting zero. Normally not a problem, but I am assuming that VPC would be doing some sort of very low level manipulation where this could become a problem.  I may be talking through my ass though.  I have not dealt with this functionality before.  Just what I read from PowerISA and spec sheets for the Power architecture.

The Power PC 970(fx/MP etc) don't support little endian mode at all, the MSR[LE] bit is not regarded.

Also MSR[LE] on the old AIM PPCs was not true little endian, it's was a hack that inverted bits in the pagetable, intended to make it easy to port little endian software to the PPC.

The modern PPCs/POWER cpus today has true little endian support.
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: Naiw on November 18, 2017, 06:47:34 PM
My main focus and preference are tools that can run on at least Mac OS 9.2.2, but I would still be VERY glad to learn of options even if they are OS-X-exclusive (up to 10.5.8 Leopard Client / 10.5.8v1.1 Leopard Server, PowerPC only). Also, if some particular tool for some reason only works with System 7 or so, if you believe it to be any good, please, do share your knowledge on it, as well.

I believe the number 1 choice must be CodeWarrior (not sure what versions specifically, though, especially considering each Mac OS version), but I was wondering if the GNU-GCC toolchain was also available for OS 9. Also, I have read some guy at IBM ported Node.js over to PowerPC (or just POWER?) machines, but I haven't yet looked into it with much detail.
Also, I figure there must be some IDE for Java (do NetBeans or Eclipse for PowerPC exist?), but I haven't yet dedicated myself to looking that up yet, either.

And to stick to topic...

Yes CodeWarrior is definately the IDE to go for (provided you can find a working license file), it's way faster than MPW (and significantly more pleasing), you also have access to PowerPlant which/was by far the best native code framework for writing classic/carbon Mac OS apps.

Codewarrior Pro 7 if you primary intend to target and develop on Mac OS 9 or earlier.

If you're happy developing on Mac OS X you would go for Codewarrior Pro 9.

Codewarrior had quite neat inline assembly support also, like you could do something like

Code: [Select]
void test(int arg1, int arg2) {
   int res;

   asm {
      add res, arg1, arg2
   }

   return res;
}

etc

MPW isn't a IDE, it's a shell (and a cumbersome one as well) but it filled a purpose in particular if you had build servers and wanted to automate stuff.

As for the GNU toolchain the only port I'm aware of was the one provided with MachTen / Codebuilder, it worked but the quality of the produced code was subpar to both MWC (Metrowerks Compiler) and MrC (MPWs Compiler).
Both was available as plugins for each others though (ie metrowerks compiler for MPW and MrC for Code Warrior)

Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: Jubadub on November 19, 2017, 05:16:23 AM
Wow, all this information is pure gold. I value it so much, I can't express this feeling enough. It addressed many of my concerns that I still had, and beyond that, even.

This raised two little questions for me, though: for Mac OS X development, why Codewarrior Pro 9 over CW Pro / Dev Studio 10? Was there something in the latest version that you think was worse?

And:
The modern PPCs/POWER cpus today has true little endian support.
This made me wonder, out of sheer curiosity, but do you happen to know if the Cell processor (PPC processor found in PS3s) already added true little endian support? Though knowing how closely-tied that processor is to the PPC 970 family, I'd assume that not, but I really have to wonder.
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: ELN on November 19, 2017, 07:03:50 AM
The MacOS NanoKernel has some undocumented system calls to set the MSR[LE] bit. This was to accelerate VirtualPC's x86 emulation.
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: Naiw on November 19, 2017, 12:15:29 PM
Wow, all this information is pure gold. I value it so much, I can't express this feeling enough. It addressed many of my concerns that I still had, and beyond that, even.

This raised two little questions for me, though: for Mac OS X development, why Codewarrior Pro 9 over CW Pro / Dev Studio 10? Was there something in the latest version that you think was worse?

And:
The modern PPCs/POWER cpus today has true little endian support.
This made me wonder, out of sheer curiosity, but do you happen to know if the Cell processor (PPC processor found in PS3s) already added true little endian support? Though knowing how closely-tied that processor is to the PPC 970 family, I'd assume that not, but I really have to wonder.

I never updated to CW Pro 10 which is the main reason (but there are others) why I can’t recommend it; both technically and practically it’s probably fine- as I recall it; it was a very minor update so it should probably rather been called 9.5 and be a free update; But for whatever reason they gave it a new version number. I believe you’ll have a difficult time to find a license for pro 10 though.

As for PS3 Cell, I can not remember (although I ought to have the data somewhere) but I don’t think any of IBMs POWER4 derived cores (That is PPC970, PS3 Cell and Xbox Xenon) had MSR[LE] support.
However I also don’t think it matters a great deal, sure the lack of MSR[LE] meant existing VPC wouldn’t work (it wouldn’t of other reasons too) but as far as I know the only software ever to use it on MacOS was VPC and the fact it was (unlike later PPCs- freescales eBook and beyond and IBM POWER8+) a system setting rather than a per page setting really sucked.
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: Naiw on November 19, 2017, 12:23:33 PM
The MacOS NanoKernel has some undocumented system calls to set the MSR[LE] bit. This was to accelerate VirtualPC's x86 emulation.

There probably was (but it certainly would be a NOP or throw err on the G5) if nothing else there was an undocumented 68k emulator trap (via a mixed mode call) that put your function as the PPC exception handler during the call (ie. your code run in native PPC supervisor mode until you rfi) I guess you already know of it since Linux boot loaders such as BootX etc been exploiting it since forever.
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: Naiw on November 19, 2017, 12:42:43 PM
Apparently other mechanisms been discovered as well.

https://groups.google.com/forum/m/#!topic/comp.sys.mac.programmer.help/3NK-jAdmOqg (https://groups.google.com/forum/m/#!topic/comp.sys.mac.programmer.help/3NK-jAdmOqg)
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: Protools5LEGuy on November 19, 2017, 01:10:45 PM
I have merged this "Top 5 Developer tools to this topic. PM if you think other should be merged to this
Title: re: OMS SDK v2.2 to develop Drivers
Post by: macStuff on November 19, 2017, 05:36:47 PM
heres a link to the post that contained the Opcode OMS SDK mentioned above http://macos9lives.com/smforum/index.php?topic=2130.0

isnt this for the purposes of creating OMS driver for hardware to work with OMS??
is this what is needed to create custom Driver for USB Midi Controllers?

folder is titled as being from January 1998
but the files are from 2001
this package seems to include an example Application aswell as an example Driver!
the sample driver appears to be for a SampleCell card
definately intended to be used with codeWarrior IDE
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: Jubadub on November 19, 2017, 06:05:09 PM
The MacOS NanoKernel has some undocumented system calls to set the MSR[LE] bit. This was to accelerate VirtualPC's x86 emulation.
Wow, is this true for all PPC versions of the MacOS kernel? (Or at least from 9~10.5.)

Apparently other mechanisms been discovered as well.

https://groups.google.com/forum/m/#!topic/comp.sys.mac.programmer.help/3NK-jAdmOqg (https://groups.google.com/forum/m/#!topic/comp.sys.mac.programmer.help/3NK-jAdmOqg)
That link is amazing, I had never thought too hard until now about user mode x supervisor mode in PowerPC MacOS. This was quite a fascinating read... Really looking forward to fiddling with this...


Also, since we are discussing all sorts of development tools and knowledge, I guess one more thing to take a look at is the availability of Ruby programming language compilers, and its most popular framework, Ruby on Rails. From quick glances online, it seems both are available for at least PPC Mac OS X 10.5 Leopard.

I also took notice that, according to the Wikipedia entry at https://en.wikipedia.org/wiki/Xcode and Apple's official documentation, the following Xcode versions exist for OS X:
- Mac OS X 10.3 Panther: Xcode v1.0 ~ 1.5;
- Mac OS X 10.4 Tiger    : Xcode v2.0 ~ 2.5;
- Mac OS X 10.5 Leopard: Xcode v2.5 ~ 3.1.4 (Wikipedia made it sound like v3.1.3 and 3.1.4 could only be installed on 10.5.7+ or that 10.5.7+ could only have those two versions of Xcode, but the official Apple documentation did not seem to indicate any such distinction amongst all the Leopard versions).
They can be obtained for free with any Apple developer account, to which, AFAIK, anyone can subscribe to. The download pages to get Xcode directly from Apple for free is here: https://developer.apple.com/download/more/
For convenience, I used a publicly-shared, pre-existing account for logging in there, found at http://bugmenot.com/view/developer.apple.com (P.S.: After pasting the password, some trailing spaces have to be removed first). Also, I think that login link should be fine, but if somehow the Mac OS 9 Lives staff finds it "risky" or anything, feel free to remove it from my post: we all can still use our own Apple IDs (or create one) to access their downloads page, anyway.
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: Naiw on November 19, 2017, 07:25:15 PM
The nanokernel only exists on powerpc Mac OS 7-9, it's purpose was to abstract away the hardware (read powerpc) from the rest of the system.
However later on Daystar etc extended it to add support for threading native threads (required to utilitise multiprocessor machines such as Daystar Gensis MP that had two or four 604 cpus)
Apple eventually added similar support with the updated nanokernel in 8.6+ (along with additional features) that was not greatly utilitised or documented.
Mac OS itself does not depend upon or relay on the nanokernel at all, I just want to empathize on the fact the nanokernel was not a part of Mac OS but a underlying requirement of running Mac OS on on 68k systems- Mac OS always was and always been a 68k system and to retain compatibility with all software that could not change at any point. So Mac OS as an OS didn't really have much of a kernel.

Mac OS X however has a kernel, Originally with Rhapsody and Mac OS X Server 1.0-1.2 it used Mach 2.5 and starting with Mac OS X 10.0 and later it's been Xnu (Which at core is Mach 3.0 and the BSD server running in the same address space; Which also means Xnu is not a microkernel as Mach 3.0 but still uses lots of microkernel mechanics; message passing that is, so it's generally refered to as a hybridkernel.)

All these script languages such as Ruby, Python Lua etc was not popular and in some cases not existing by the time classic Mac OS was prime time. Perl was probably the biggest script language at the time and there was a mac version of it.
But in general I think it's not worth bothering with script languages on OS 9 or earlier, even if you find an old build of some language its most likely extremely dated and if you intend to port something yourself, be prepared to encounter about every technical problem you can imagine. Mac OS 9 was by modern standards really messed up at the core.

Stick with the established languages at the time if you intend to get something done.

If you really really consider command line stuff or similar consider looking at http://www.macrelix.org/ (http://www.macrelix.org/) or https://en.wikipedia.org/wiki/MachTen (https://en.wikipedia.org/wiki/MachTen) (The latter is commercial and dated though- and more of running another system on top of mac os, for good and bad)
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: nanopico on November 20, 2017, 06:11:30 AM
MPW isn't a IDE, it's a shell (and a cumbersome one as well) but it filled a purpose in particular if you had build servers and wanted to automate stuff.

What qualifies as an IDE then? MPW is definitely an IDE.
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: Jubadub on November 20, 2017, 07:22:52 AM
All these script languages such as Ruby, Python Lua etc was not popular and in some cases not existing by the time classic Mac OS was prime time. Perl was probably the biggest script language at the time and there was a mac version of it.
But in general I think it's not worth bothering with script languages on OS 9 or earlier, even if you find an old build of some language its most likely extremely dated and if you intend to port something yourself, be prepared to encounter about every technical problem you can imagine. Mac OS 9 was by modern standards really messed up at the core.

Stick with the established languages at the time if you intend to get something done.
Yes, you're right, but there is a reason I brought these up, although I think I wasn't clear about it until now: I wanted to highlight all sorts of development paths, because I know some people out there other than myself will also be seeing this, and some of them are more likely to get their feet wet with general PowerPC (or even 68k) Mac development through one specific language or toolchain than another, provided they have a motive like I do. Some friends I have, for instance, are familiar with these, so the more I get uncovered, the better. I also am not strictly interested in only pre-OS-X development, although it is true Mac OS 9.2.2 is my biggest interest, so I find scripting languages that got popular only past the time of OS 9's prime are still important. I don't intend to port any of them myself, either, though. (Except maybe IBM's Node.js, but that is not a priority right now.)

Indeed, as for myself, for the sake of "getting things done", I'm actually already set on C, C++ and PPC assembly, using probably CodeWarrior Pro 9, Xcode 3.1.4, MPW and/or Fantasm/LIDE (Fantasm being an interesting program I saw you mentioning on another thread. I'll make a more detailed post on that later when I can), whichever I find suits best my needs. But I think I haven't looked at every nook and cranny yet, so I'm still after as much info on tools & everything else as possible. For my and others' sakes.


Speaking of which, those paragraphs on the kernel and those two link recommendations are being all of great help. I heard much about some of these kernel details from the good folk of this forum in other threads, and from random places online, but much of it I was completely unaware about. Thanks!
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: Naiw on November 20, 2017, 07:11:56 PM
MPW isn't a IDE, it's a shell (and a cumbersome one as well) but it filled a purpose in particular if you had build servers and wanted to automate stuff.

What qualifies as an IDE then? MPW is definitely an IDE.

Ok correction, MPW is not an IDE by my definition as an IDE typically is made to accelerate the development process by providing by the very least automatic project management and build automation.

But yeah okay, if MPW qualify as an IDE, then I guess Terminal.app, command.com etc are IDEs too. Or rather what would define something not to be an IDE then?
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: macStuff on November 20, 2017, 09:35:04 PM
https://en.wikipedia.org/wiki/CodeWarrior
read the definition of codeWarrior

lets all just 'nip this one in the bud' as they say
and just move on to the more important stuff ?? ya?

;)

https://en.wikipedia.org/wiki/Macintosh_Programmer%27s_Workshop
the entry for MPW says that its a software development environment..
SDE vs IDE ..
close enough??

Quote
Macintosh Programmer's Workshop or MPW, is a software development environment for the Classic Mac OS operating system, written by Apple Computer. For Macintosh developers, it was one of the primary tools for building applications for System 7.x and Mac OS 8.x and 9.x. Initially MPW was available for purchase as part of Apple's professional developers program, but Apple made it a free download after it was superseded by CodeWarrior. On Mac OS X it was replaced by the Project Builder IDE, which eventually became Xcode.

MPW > ProjectBuilder > Xcode!!!
interesting to be told the history..

https://www.macintoshrepository.org/1360-macintosh-programmer-s-workshop-mpw-3-0-to-3-5
(https://www.macintoshrepository.org/_resize.php?w=640&h=480&bg_color=333333&imgenc=ZmlsZ997XMvbWcvc2l0ZXMvbWcvZmlsZXMvc2NyZWVuc2hvdHMvbXB3LmdpZg%3D%3D)
Title: Re: Developing software tools needed to PROGRAM plugs
Post by: Naiw on November 20, 2017, 10:27:08 PM
I agree, it’s highly irrelevant what it is or not is.

So is the preference order of various tools as well.

It can just be established the majority of the developers after the introduction of PowerPC Mac OS tend to use Code Warrior, primary because it was the first compiler with PPC Pef support but I would also think the main reason was powerplant.
Title: Re: Top 5 OS 9 Developer Tools? Plus questions
Post by: teroyk on December 05, 2017, 02:10:50 PM
The MacOS NanoKernel has some undocumented system calls to set the MSR[LE] bit. This was to accelerate VirtualPC's x86 emulation.
Wow, is this true for all PPC versions of the MacOS kernel? (Or at least from 9~10.5.)

Apparently other mechanisms been discovered as well.

https://groups.google.com/forum/m/#!topic/comp.sys.mac.programmer.help/3NK-jAdmOqg (https://groups.google.com/forum/m/#!topic/comp.sys.mac.programmer.help/3NK-jAdmOqg)
That link is amazing, I had never thought too hard until now about user mode x supervisor mode in PowerPC MacOS. This was quite a fascinating read... Really looking forward to fiddling with this...


Also, since we are discussing all sorts of development tools and knowledge, I guess one more thing to take a look at is the availability of Ruby programming language compilers, and its most popular framework, Ruby on Rails. From quick glances online, it seems both are available for at least PPC Mac OS X 10.5 Leopard.

I also took notice that, according to the Wikipedia entry at https://en.wikipedia.org/wiki/Xcode and Apple's official documentation, the following Xcode versions exist for OS X:
- Mac OS X 10.3 Panther: Xcode v1.0 ~ 1.5;
- Mac OS X 10.4 Tiger    : Xcode v2.0 ~ 2.5;
- Mac OS X 10.5 Leopard: Xcode v2.5 ~ 3.1.4 (Wikipedia made it sound like v3.1.3 and 3.1.4 could only be installed on 10.5.7+ or that 10.5.7+ could only have those two versions of Xcode, but the official Apple documentation did not seem to indicate any such distinction amongst all the Leopard versions).
They can be obtained for free with any Apple developer account, to which, AFAIK, anyone can subscribe to. The download pages to get Xcode directly from Apple for free is here: https://developer.apple.com/download/more/
For convenience, I used a publicly-shared, pre-existing account for logging in there, found at http://bugmenot.com/view/developer.apple.com (P.S.: After pasting the password, some trailing spaces have to be removed first). Also, I think that login link should be fine, but if somehow the Mac OS 9 Lives staff finds it "risky" or anything, feel free to remove it from my post: we all can still use our own Apple IDs (or create one) to access their downloads page, anyway.

Somebody might interesting about this:
https://stackoverflow.com/questions/5333490/how-can-we-restore-ppc-ppc64-as-well-as-full-10-4-10-5-sdk-support-to-xcode-4
But how you can use XCode for making programs for Mac OS 9???
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: Naiw on December 05, 2017, 04:40:57 PM
That is simple to answer.

You can’t. Mac OS 9 requires PEF or XCOFF binaries, the toolchain included with Xcode only does MACH-O and that won’t work with Mac OS 9.
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: teroyk on December 15, 2017, 03:47:05 PM
That is simple to answer.

You can’t. Mac OS 9 requires PEF or XCOFF binaries, the toolchain included with Xcode only does MACH-O and that won’t work with Mac OS 9.

Yes I know that..but then I found interesting thing:
CodeBuilder for Classic Mac OS version 1.1
More information:
https://www.tenon.com/products/codebuilder/description/
Has anybody test this?
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: Naiw on December 16, 2017, 06:56:34 PM
That is simple to answer.

You can’t. Mac OS 9 requires PEF or XCOFF binaries, the toolchain included with Xcode only does MACH-O and that won’t work with Mac OS 9.

Yes I know that..but then I found interesting thing:
CodeBuilder for Classic Mac OS version 1.1
More information:
https://www.tenon.com/products/codebuilder/description/
Has anybody test this?

Yes, I have it... somewhere. It was the first tenon product I bought, never really used it to develop MacOS software, mostly just used it to play around with objective-c, to be honest it wasn't all that great. I don't remember if code builder used gcc or egcs by default- either way both was way behind MrC or CW when it came to code quality so I never found any reason to bother with the at best cumbersome process of making MacOS software with it.


Codebuilder was essentially MachTen minus networking support and a lot (really like 50 MB) or so example code and frameworks/ports of apps that MachTen didn't ship with, for example the GNUStep code base is not present in MachTen.

Either way, my recommendation is don't bother. MachTen has it's uses, Codebuilder essentially don't as the main benefit with command line based development is collaboration, and it's kind of hard to do that when there's no network support.

Said it before, CodeWarrior does it all and it's/was really good.
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: Astroman on December 17, 2017, 04:47:07 AM
my favourite environment has always been Open Interface by Neuron Data.
They made an expert system toolkit on Mac in the early 90s and after successfully introducing it to the market, they faced the usual 'cross-platform' dilemma.
But different than most they really nailed it by a common graphic base and GUI toolkit that kept the look and feel of the respective OS while program functionality was retained.
You could even switch the look at runtime instantly from (say) Mac to Motif or Win-3.
While developed for inhouse use originally, it became a product named Open Interface, later versions called Interface Elements (dunno those).

Have a peek in this Discovery Channe feature, lots of classic Macs on the scene...
https://www.youtube.com/watch?v=tSjPNXwcGjA
the interesting part is the 2nd half from about min 5.00 on

The company went through multiple merges and aquisitions and most traces practically vanished from the web.
Found this browsable copy of the original manual:
https://archive.org/stream/TNM_Neuron_Data_Open_Interface_technical_overview_20171017_0142#page/n1/mode/1up

Tbh it's the most well thought out oo-programming approach without having to deal with an oo-language syntax.
It's plain ansi-C and basically all needed doc is right in the header file comments - short, precise, clear.
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: Custos on October 17, 2019, 09:16:16 AM
Where the hell is syntho in this discussion? Wasn't it him that developes his own plugs or am I thinking of another member? I would be highly interested in messing about with some type of SDK for PT be it for LE or TDM doesn't matter.
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: Protools5LEGuy on October 17, 2019, 12:53:48 PM
Those are  closed platform.

Best chances to do a VST plug and "port" it with reFuse.

IIO and other users talk about MAX software&protocol. Apple and Oranges AFAIK
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: Protools5LEGuy on October 17, 2019, 01:01:59 PM
Maybe there is a way to do a Pluggo Plugin in Max/MsP for Protools to use it.

Easy way IMHO is "develop" VST "carbon" plugs and use a DAW as a standalone for that plug alone, and keep the Protools machine doing its tasks.

P.D. Last time I installed Pluggo on a Win Machine I regretted once I saw the list of plugs it includes. IT IS SO LONG THAT YOU CANT FIND YOUR FAVORITES ONES BACK. I warn you.
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: IIO on October 17, 2019, 01:11:31 PM
jupp, pluggo works with PT.
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: Custos on October 17, 2019, 03:53:10 PM
Is plugo win blows only? I wouldn't mind working on stuff on my laptop then porting it. Would be nice to have everything on the mac side as well. Jumping back and forth seems counterproductive.
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: Protools5LEGuy on October 17, 2019, 04:27:42 PM
http://macos9lives.com/smforum/index.php/topic,3158.msg20266.html#msg20266
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: IIO on October 17, 2019, 05:19:42 PM
like most good stuff it was mac only at first.

OS9 should be our main focus here, but you wont have any issues with windows.

you just should be aware of one minor difference, which is that the first windows version of max is newer than the latest for mac os 9.

so it has a few more vanilla objects which are not available for OS9.

you should know that list when you want to code on win but use the result on mac.

there is also a minor issue with font size. when i do somethign on windows, i usually rewrite the code later on the mac (because i am very anal when it comes to code layout).
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: Custos on October 17, 2019, 05:21:48 PM
Idk why but I was thinking Pluggo was an SDK. I missed the part where you mentioned PT is a closed development. I'll check it out none the less. looks pretty cool. I actually would rather use os9 but PT doesn't support VST.
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: IIO on October 17, 2019, 05:26:27 PM
not an "SDK" at all. you are supposed to make a "normal" max patch which includes a few pluggo-specific binaries, all of them are part of vanilla max.

i will be glad to guide you through it when you´re ready. ;)

Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: IIO on October 17, 2019, 05:29:22 PM
ah, about PT.

pluggo is a max runtime itself. in OS itr is installed parallel to the max programming enviroment.

this runtime works with RTAS, MAS and VST (and AU in OSX).  the pluggo plug-ins will work with all of them and you dont have to care about RTAS licensing at all - or for VST2 for that matter - because you would have a legal problem here as well since 12 months.
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: Custos on October 17, 2019, 05:33:44 PM
rtas would be my main goal. Where is a good starting place. complete noob I have a basic understanding of programming though.
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: IIO on October 17, 2019, 05:41:23 PM
for mac, PM me.

for win, search for max/msp 4.6.x and download from some moron on teh interwebz while running antivirus protection.

if you are registered for later versions, ask cycling support for a v.4 auth. they have to do it manually, but it still works.


this is how a delay effect with GUI and automation will look like. the rest is provided by the "pluggo runtime"

of course, if you want to do real stuff, it can easily get as complicated as in C++or even more - but the entry level is low.



Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: Custos on October 17, 2019, 05:45:13 PM
I only use windows for FL studio and web surfing/file transfers. I effing hate windows. I grew up on os7/os8. Can you PM me a Links to everything I need. I bookmarked this page and download the Tuts.
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: IIO on October 17, 2019, 05:45:32 PM
like i once called it, the "VST" is already there, you can concentrate on the "plug-in". :)
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: IIO on October 17, 2019, 05:46:45 PM
ok will do that tomorrow. that pdf is a very nice resource for beginners indeed. others dont exist.
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: Custos on October 17, 2019, 05:48:17 PM
Thanks for the help 110. Will it let you do custom graphics? I just got a replacement wacom. Been needing an excuse to bust it out.  8)
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: IIO on October 17, 2019, 06:00:53 PM
more or less. you have 7 or 8 graphics objects where you can use picture files, you have pseudo-quickdraw, and if you are completly mad you could also use video and GL stuff.

shameless selfpromotion: look my GUIs here, done 20 years ago in OS9.
https://arstechnica.com/gadgets/2016/09/an-os-9-odyssey-why-do-some-mac-users-still-rely-on-16-year-old-software/3/
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: IIO on October 17, 2019, 06:01:55 PM
if you have a wacom... you can also use this as a midi controller in pluggo ;)
Title: Re: Developing software tools needed to develop Apps and Plugs-Ins
Post by: Protools5LEGuy on March 26, 2023, 05:47:35 PM
https://forums.macrumors.com/threads/developing-for-tiger-and-leopard-powerpc-a-devlog.2383838/?post=32036127#post-32036127 (https://forums.macrumors.com/threads/developing-for-tiger-and-leopard-powerpc-a-devlog.2383838/?post=32036127#post-32036127)

User cellularmitosis
Quote
The Apple Developer Connection Reference Library​

Apple produced a monumental amount of developer documentation, but resurrecting it from internet bitrot takes a bit of effort.

I've taken a copy of the reference library from the last ADC DVD set before the library was re-oriented towards Snow Leopard, put it up on github (with all of the sample code .zip files expanded for online browsing) and made it browseable via plain HTTP at http://leopard-adc.pepas.com/

I've also corrected all of the "Featured Article" links (which are all long-since defunct links to developer.apple.com) to point to copies from the Internet Archive via the Wayback machine.

There, in legacy documents,
http://leopard-adc.pepas.com/referencelibrary/LegacyTechnologies/index-date0.html (http://leopard-adc.pepas.com/referencelibrary/LegacyTechnologies/index-date0.html)
 if you browse bottom you can find some docs that I think are missing today on Apple Developer link


Like this http://leopard-adc.pepas.com/technotes/pt/pt_12.html#//apple_ref/doc/uid/DTS10002666 (http://leopard-adc.pepas.com/technotes/pt/pt_12.html#//apple_ref/doc/uid/DTS10002666) Technical Note PT12
C++ Pitfalls in MPW
Quote
Important: This document is part of the Legacy section of the ADC Reference Library. This information should not be used for new development.

Current information on this Reference Library topic can be found here:

    Reference Library > Tools

Technical Note PT12
C++ Pitfalls in MPW
CONTENTS

Introduction

Class Protection and Inheritance

Type Casting

General Class Issues

Operator Overload Issues

Inlining Issues

Memory Leakage

Tricks to Help You Find Memory Leaks

Virtual Functions

Compiler Issues

Testing/Debugging

References

Downloadables
   

This Technical Note covers most of the common and serious subtle problems that a MPW C++ user might encounter. For more information consult the current C++ literature. This Note will be updated periodically to reflect changes in the language and the compiler. Always read the release notes included with the MPW C++ to find out the latest status for known bugs and restrictions.