Author Topic: Documentation  (Read 65845 times)

0 Members and 1 Guest are viewing this topic.

Alex_Longard

  • Guest
Re: Documentation
« Reply #210 on: January 18, 2019, 02:56:02 AM »
Hi John,
I try to rewrite VST sdk for O2, I just did not see examples for "prototypeof" and some others commands...
It is difficult to understand pointers in O2, after being used to writing on pure C and a bit strange PureBasic.
When I make a minimally working project, I want to put it in you sandbox so that other people can see how can write very fast and convenient code for DSP on O2.

JRS

  • Guest
Re: Documentation
« Reply #211 on: January 18, 2019, 10:09:26 AM »
This is outside my level of expertise and Charles should test this and place it in the sandbox where he thinks it should go.

@Charles- You can use the web UI for the sandbox to add / change files. Just add a commit note so we know why it's there.

Charles Pegge

  • Guest
Re: Documentation
« Reply #212 on: January 22, 2019, 12:26:27 AM »
Hi Alex,

I would be very interested to see your VST work. Perhaps we can include some in the package.

O2 hides its pointers. This is consistent with BASIC parameters passed byref, but opposite to the way pointers are handled in C. The variable address is set by left sided expressions like:

&v=pt
or
@v=pt

Alex_Longard

  • Guest
Re: Documentation
« Reply #213 on: January 26, 2019, 12:56:20 AM »
Hi Charles!
I while write my first plugin in pure C,
and now i very slow write this in O2. I don’t know how to write some functions that are not in O2, I have to use what is already there Msvcrt.inc.
This will work very badly, the plugin should be less dependent on winapi, unless it is a graphics functions.
Big thanks for your pointer example, it's very helpful to me!

There my code in last post:
https://www.kvraudio.com/forum/viewtopic.php?f=33&t=518049

Arnold

  • Guest
Re: Documentation
« Reply #214 on: July 17, 2019, 03:29:11 AM »
Hi Charles,

somehow I overlooked the Docs folder of OxygenBasic on GitHub. This is really helpful information. Together with the help file of Oxygenbasic not many wishes remain open any more.

I noticed that in the section Control_Flow / Looping Statements you used the notation "exit ehile". Will "exit while" be deprecated at some time in favour of "break when"?

There is also the interesting section of Windows Data Types. Can the O2 definitions be used for these data types? Must the names of the Data Types be used in upper case, and will there be no conflicts e.g. HANDLE - handle, HBRUSH - hbrush, HWND - hwnd? As I apply case-insensitive code, these constructs look like magic to me. But if that works, I will use these definitions right away.

Roland

Charles Pegge

  • Guest
Re: Documentation
« Reply #215 on: July 17, 2019, 04:25:44 AM »
Hi Roland,

These docs are the preliminary work of José Roca. They are a very good start but we will need to revise and extend them.

typedef long LONG will not cause recursion, even in case-insensitive mode. There is protection against this possibility.

On the other hand, dim as HANDLE handle can only be used in the case-sensitive modes


exit while will remain the standard, the others are more experimental.
« Last Edit: July 17, 2019, 04:33:28 AM by Charles Pegge »

Nicola

  • Guest
Re: Documentation
« Reply #216 on: August 29, 2020, 06:46:28 AM »
@Aurel

OK for me. This is already useful, but it should be improved.
For example, information like  $ crlf chr (13,10)    could be very important.

Also useful is a part that better explains the characteristics and use of window objects in o2.

In the Help I can not find any reference to PRINTL, WAITKEY.
« Last Edit: September 02, 2020, 06:39:34 AM by Nicola »