Interactive PowerBasic Forum

IT-Consultant: Charles Pegge => OxygenBasic => Topic started by: Charles Pegge on January 01, 2024, 05:49:22 PM

Title: Oxygen 07P10 / Happy New Year!
Post by: Charles Pegge on January 01, 2024, 05:49:22 PM
A few fixes, and removal of UPX compression, and addition of mouse-button sensitivity in inc\console.inc

This year my primary focus will be on  making OpenGl useful with a new API demos\opengl\UI\DrrawGui

QuoteRELEASE 0.7.0P10  01/01/2023

14:47 01/01/2024 Drop UPX compression of Oxygen DLLs
04:56 01/01/2024 Fix proja\controls\controls.inc bstring txt instead of string txt
14:26 29/12/2023 Fix ubound(x) for indexbase 0 (lang.inc ubound)
15:46 24/12/2023 Fix 64bit oxygen array attributes asm sword (decl.inc "mov dword ")
09:15 24/12/2023 Fix for(...) single statement ++ operators (tran.inc reco.inc capts identop)

release 07P10:
https://sourceforge.net/projects/oxygenbasic/
https://github.com/Charles-Pegge/OxygenBasic/blob/master/OxygenBasic07P10.zip

Title: Re: Oxygen 07P10 / Happy New Year!
Post by: Frank Brübach on January 01, 2024, 06:49:45 PM
Happy new year Back dear Charles and whole Family Friends too :)

Thx for Update I will Check tomorrow...

Perhaps you can add next Update for oxide.o2bas file a simple

% Title  "Oxide"  ' or
String Title = "Oxide Editor"

Into MainWindow File lol

Regards Frank
Title: Re: Oxygen 07P10 / Happy New Year!
Post by: Zlatko Vid on January 01, 2024, 07:31:58 PM
QuoteA few fixes, and removal of UPX compression

Thanks Charles, Happy New Year 2024

...and finally you remove UPX ..cause lot problems with antivirus programs
i hope that i will in better mood for programming
and maybe add more stuff in my interpreter micro(A)
..maybe some openGL(even i don't like it  ::) )
all best
Aurel  :)
Title: Re: Oxygen 07P10 / Happy New Year!
Post by: Charles Pegge on January 01, 2024, 08:42:35 PM
When megabytes are so abundant, there is no further advantage in squeezing all the air out of binaries :)

As for OpenGl, my ambition is to make it more accessible for GUI applications. Perhaps an Opengl-based IDE which would be free of the limitations of Windows Edit boxes.

Title: Re: Oxygen 07P10 / Happy New Year!
Post by: Frank Brübach on January 01, 2024, 08:52:24 PM
... more accessible for GUI Applikation ... Thats a good Idea cause its Not so easy for new User or Basic Users to understand new Concept of openGl. (ConsoleG) . I know three different OpenGL Setups from freebasic Powerbasic and Here oxygen Basic and all are different

Good Luck I am curious to See and perhaps I can Help a little or Support you with examples

Title: Re: Oxygen 07P10 / Happy New Year!
Post by: Pierre Bellisle on January 02, 2024, 06:51:44 AM
Thanks Charles, great 2024!
Title: Re: Oxygen 07P10 / Happy New Year!
Post by: Zlatko Vid on January 02, 2024, 08:23:20 AM
QuotePerhaps an Opengl-based IDE which would be free of the limitations of Windows Edit boxes.

Charles ..i get it , but then you depend on openGL as secondary thing
similar to Scintilla, i saw some sort of editors in games but they are DirectX
not openGL
well...openGL require lot of learning i guess...
OR i am wrong?
Title: Re: Oxygen 07P10 / Happy New Year!
Post by: James C. Fuller on January 02, 2024, 03:24:18 PM
Charles,
  I don't do much coding but I do run new releases of O2 and BCX on existing code.

I was looking through your examples for some file io code other than put and get?

I have written O2 code using fopen,fclose and my own LineInput. I don't remember if I posted or not?

 While looking I  ran into this head scratcher with OxygenBasic\demos\MetaProg\UseBuffer.o2bas
I expected the output to be
one
two
three
instead of
onetwothree

I compile with
cO2m64 -m -64 UseBuffer


James
Title: Re: Oxygen 07P10 / Happy New Year!
Post by: Charles Pegge on January 02, 2024, 04:32:41 PM
Thanks James,

This is code I have not looked at since 2012 :)

In this case, the problem is a line in inc\RTL64.inc

line 4204 should be deleted or commented out:
  string cr=chr(13)+chr(10)
This makes it consistent with RTL32 and should resolve the null cr that you see in this example.

Title: Re: Oxygen 07P10 / Happy New Year!
Post by: Charles Pegge on January 02, 2024, 06:17:11 PM
OpenGl is seriously complex and not at all intuitive, but the potential is great. It needs a few extra layers of support so you can do simple things with a few lines of code, and to provide plenty of open source code for more challenging projects.

Title: Re: Oxygen 07P10 / Happy New Year!
Post by: Charles Pegge on January 02, 2024, 09:38:17 PM
For example, here is a simple Drag&Drop for images onto moveable box: it should work with bmp, jpg, png etc.


  % Title "Console Drag & Drrop Image Demo"
  uses consoleG
  BeginScript

  procedure main()
  ================
  if opening
    static sys res,wi,ht,imgn
    texe++ 'next texture slot
    imgn=texe
    static string wr
  end if
  if filedrop  'drag & drop file
    wr=filedrop
    filedrop=""
    LoadTexture wr,imgn,res,wi,ht
  endif
  cls ' .3,.3,.5
  pushstate
  move 20,-15
  UserMovement m1,100
  '
  'display image
  '
  flat
  color 1,1,1,1
  texture imgn
  scale 15
  quadnorm 1.0,Ht/Wi 'apply image texture to a quad
  texture 0
  popstate
  '
  end procedure 'main

  EndScript

Title: Re: Oxygen 07P10 / Happy New Year!
Post by: Frank Brübach on January 03, 2024, 04:16:22 PM
Thank you Charles Works very Well

:)
Title: Re: Oxygen 07P10 / Happy New Year!
Post by: Nicola on January 05, 2024, 09:38:01 PM
Hi Charles.
Thank you so much for this new and definitely better update.

As far as openGl is concerned, I think it has great potential. Unfortunately, I know very little about him. I'd love to have Consoleg.inc and other .inc related to opengl with explanations for each function and/or sub. For example, what are the functions for internal use only?

Cheers
Title: Re: Oxygen 07P10 / Happy New Year!
Post by: Charles Pegge on January 06, 2024, 12:13:25 AM
Hi Nicola,
Potentially every procedure, macro and global variable is available for external use. The whole thing is designed bottom-up, based on use-instances (posh term for examples :) )