Help on Help

Started by Nicola, December 12, 2021, 11:57:55 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Zlatko Vid

I am really not sure why not work for you
for me work because i compiled it with older A41 version of compiler
i don't tried with new-er or latest
I see that you use OxIde but should be the same ,...
  •  

Zlatko Vid

hi nicola
this one i tested on 0.28 selfcompiled
there are few changes in strict definition of variable and in while key(27) event loop.
check code
'example deep - using sw.dll  by peter wirbelauer version A41
include "sw.inc"

window 800,600,1
setFps (16)
'test jmp / comment| uncomment next line
'JMP the_end
string salt = "INTO THE DEEP"
single a,cx,cy,i,w,h,y
sys tcolor,s
w=800/2 : h=600/2
int p = len(salt)
'int KeyHit = key(0)
'int Escape_Key = 27

While key(27)=0
cls rgb(0,0,0)

for i = 1 to 360
cx = w+sin(i-a)*i
cy = h+cos(i-a)*i
tcolor= rgb( i-105, i-105, 0)
'! FillCircle     Lib "sw.dll" (sys xpos,ypos,r1,color) as sys
fillcircle cx-20,cy+70,2*a ,tcolor
cx = w+sin(i+a)*i
cy = h+cos(i+a)*i
'color i-105, 0, i-105
  tcolor = rgb(i-105, 0, i-105)
  fillcircle cx-20,cy+70,3*a,tcolor
  cx = w+sin(i-a)*i
  cy = h+cos(i-a)*i
  tcolor  = rgb(i-105, i, i-105)
  fillcircle cx-20,cy+70,4*a, tcolor
  cx = w+sin(i+a)*i
  cy = h+cos(i+a)*i
  tcolor = rgb(i, i-105, i-200)
  fillcircle cx-20,cy+70,2*a, tcolor
  a = a + 0.001
  if a>=8 then a = -a
next i

for s=1 to p
    tcolor = rgb(225,225,155)
   '! Text  Lib "sw.dll" (sys xpos,ypos,string text,sys color) as sys
    Text 400, 200+s*20, mid(salt,s,1), tcolor
next s
sync()
wend
'winEnd

'jump to labele here:
'the_end:
'print "test JMP ...THE END"
  •  

Zlatko Vid

..also
i just tried to compile OxIDE from package and found that some things not work
configuration file is not loaded ..why ..i don't know
compile ..F5 not work in my case too
i set code

% SCLEX_OBASIC = 75
      '
      def sm SendMessage hsci,
      '
     '3  cpp
     '8  vb ***
     '40 lout
     '51 powerbasic
     '75 freebasic
      sm SCI_SETLEXER, SCLEX_OBASIC ,0    'Oxygenbasic lexer

sclex was with number 200 ... :o
that is strange because i have old version i think running ,it looks that code
for oxIde is not updated ..i am not sure ..
  •  

Nicola

Aurel,
I checked the listing and found the catches. I didn't think I had to check the syntax ...
Anyway it's ok. works without problems.
But remains the problem of the 64bit compilation that still does not find the DLL although I have put it both where it is oxide, and in the directory of DEEP.o2bas ... (Charles could help me understand this thing)

An interesting and beautiful thing, I add a value + 0.0001 (a = a + 0.0001) and the resulting effect is really beautiful. :-*

Zlatko Vid

well as far as i know OxIde is 32bit program.
Ok i will try compile 64 bit app on win7_64 bit to see how Aurel Edit work
then i can tell you...
  •  

Nicola

Thanks Aurel.


Speaking of OXIDE, I don't hide the idea that I'd like it to have more accurate bug reporting.
Often it seems like everything should be fine and instead there are errors that go unnoticed ... and I don't have the ability to implement such a thing. :'(

Cheers

Nicola

Hi,
What is the use of the SKIP command / function?


Zlatko Vid

#22
skip ???
never see  this thing

but if SKIP is command or function proably then skip over something .
i am wondering where you find this thing ?
  •  

Zlatko Vid

#23
wait a moment
i just download help chm file you posted
who made this one ...i have never saw it before ???

edit;;;

QuoteThis Help was compiled by nico18n (Nicola Piano) - agosto 2021

so i see you made it ..great ..
may i ask you in what you made it ...
i am using old waHelp but i have some freakin problems with this program( i think that have bugs )
  •  

Charles Pegge

There is a lot of material on x86 Assembler on the web. You can lookup X86 instruction set

But to see some live asm in o2 there are som base functions in inc/RTL32.inc and inc/RTL64.inc

LCASE example:

  '------------
  lcases: '2328
  '============
  '
  push esi
  mov esi,[esp+8]
  mov edi,0
  cmp esi,0 'null string test
  jz lwrx1
  mov edi,[esi-4]
  lwrx1:
  push edx
  push edi
  push 0
  call SysAllocStringByteLen
  pop edx
  mov ecx,edi
  mov edi,eax
  push eax
  and edx,0xff 'supporting wide code

  lwrr:
  sub ecx,edx
  jl lwrx
  mov al,[esi]
  cmp al,65
  jl lwrn
  cmp al,90
  jg lwrn
  add al,32
  lwrn:
  mov [edi],al
  add esi,edx
  add edi,edx
  jmp lwrr

  lwrx:
  pop eax
  pop esi
  ret 4



Thanks Nicola for your help file. I will take a look ASAP


Nicola

Not at all Charles. :)
Thanks to you for the precious o2b.
If you see something to fix write it to me ...

Where can I find examples with "==", "#return", "yval"?

Maybe when you can give us other ideas to see.

Eduardo Jorge

Quote from: Zlatko Vid on December 25, 2021, 05:18:43 PM


And also i think that any connection with scriptBasic should be removed from
OxygenBasic files , simply because there is no any benefit using this files .
The similar opinion i have about Thinbasic files, o2 should be more for oriented to himself.


I agree, additional things about other projects only get in the way of learning with O2
  •  

Nicola

I also believe it is right to focus on O2B

Charles Pegge

#28
OK. I can consign ProjectsC to a legacy folder on GitHib.

PS:

yval looks like a typo
#return is obsolete
jmp call ret are x86 assembly code instructions, and commonly used for other processors.

Eduardo Jorge

Charles Pegge, I think that this way you could add content to VBA, there are thousands of users who use it to automate their projects in MS office package, for easy use for laymen until Corel bought and implemented it.
for most things vba is self sufficient, but lacks speed in some cases, and mostly lacks a way to mask your code.
  maybe it was a way to attract developers to O2 interested in developing for a specific market
  •