It is currently Tue Mar 31, 2020 9:10 pm

All times are UTC + 1 hour




Post new topic Reply to topic  [ 35 posts ]  Go to page Previous  1, 2, 3  Next
Author Message
 Post subject:
PostPosted: Thu Feb 05, 2009 8:18 pm 
Offline
Addict
Addict

Joined: Sat Apr 10, 2004 1:20 pm
Posts: 1143
Location: Germany
lexvictory wrote:
ok, have tested - excellent work, especially the changing of the status test :)
Droopy's Lib compiles fine
Thanks :D

lexvictory wrote:
But in TBManager.pb, can #PB_CheckBox_Right be removed from line 416?
It creates an annoying little space between the checkbox and the text.
Never noticed this myself :shock: its ok now.

lexvictory wrote:
Just noticed: doesn't the /MULT make TB not check that it is already running?
line 43 of inc_parameter.pb
Right, i removed this check.

lexvictory wrote:
Also, in the TB manager code, it checks and disables unicode and threadsafe checkboxes, but I can't seem to find a similar safeguard in the Tailbite.exe code. Did I miss it?
A check is added.


lexvictory wrote:
Been doing some research, and Google Code is an SVN alternative to Sourceforge (possibly easier if you already have a google account).
But I don't have any experience with Google Code.
Thanks for investigation, i setup a project on sourceforge. In a few days (1-3) it will be available. The project name is tailbite.

mistrel wrote:
I'm very interested in testing this with all of the PureGDK's user libraries. Are there plans to integrate this functionality into Tailbite?
How is your testing going on mistrel ?

PS : heres the download link to the current beta :
http://www.tailbite.com/downloads/TailBiteV1.3PR1.880.zip

Image


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Thu Feb 05, 2009 9:11 pm 
Offline
Addict
Addict

Joined: Sat Jun 30, 2007 8:04 pm
Posts: 3361
Quote:
How is your testing going on mistrel?


I haven't had an opportunity to test it yet. I'll let you know when I do.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Fri Feb 06, 2009 1:25 am 
Offline
Addict
Addict

Joined: Sun May 15, 2005 5:15 am
Posts: 1027
Location: Australia
Very nice, as always :)
Although I'm worried I'm getting too demanding/annoying :lol:

Do you still have a copy of Inc_OS_Linux.pb?
I think it used to be there, and I was going to do some linux work today, but I can't find the include.
Or was there never one, and I've just modified the windows one in the past?
EDIT: Never mind, I've made quite a few alterations to your latest source, and tailbite.pb runs on linux (alterations such as changing things to constants defined in Inc_OS_* and making paths lowercase) :D

Oh, and nice test file in the screenshot :wink:
hehe, just kidding - it's a lot easier for you to test it yourself while developing, I know :)

I'm guessing you understood it, but i meant "status text" not "status test"
Not sure how that one slipped through :shock: lol

_________________
Demonio Ardente

Currently managing Linux & OS X Tailbite
OS X TailBite now up to date with Windows!


Last edited by lexvictory on Sat Feb 07, 2009 1:00 am, edited 1 time in total.

Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Fri Feb 06, 2009 10:00 pm 
Offline
Enthusiast
Enthusiast
User avatar

Joined: Sun Dec 02, 2007 12:11 pm
Posts: 256
Location: Germany
Thanks for the new features and all the work, guys. It works very well. :)

I just have one problem: As soon as I use the .p-bstr pseudotype I get the following error, because it does put the "extrn" declaration into the EndProcedure code again.
Code:
---------------------------
TailBite Error
---------------------------
FAsm: HelloWorld.asm

flat assembler  version 1.67.26  (1558888 kilobytes memory)

Functions\HelloWorld.asm [28]:

extrn test__SysFreeString@4

error: symbol already defined.
---------------------------
OK   
---------------------------


Code:
Prototype Test_(String.p-bstr)
Procedure Test__(*String)
  ProcedureReturn *String
EndProcedure

ProcedureDLL HelloWorld()
  Test.Test_ = @Test__()
  ProcedureReturn Test("Hello World")
EndProcedure


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat Feb 07, 2009 12:53 am 
Offline
Addict
Addict

Joined: Sun May 15, 2005 5:15 am
Posts: 1027
Location: Australia
It appears there because that's where it is in purebasic.asm that gets generated by pbcompiler

pb commented asm output:
Code:
; ProcedureDLL HelloWorld()
macro MP4{
_Procedure4:
  PS4=8
  XOR    eax,eax
  PUSH   eax
  CALL  _SYS_CheckStringBuffer@0                                                                                                                                                                                             
; Test.Test_ = @Test__()
  LEA    eax,[_Procedure2]
  MOV    dword [esp],eax
; ProcedureReturn Test("Hello World")
  PUSH   dword _S1
  CALL  _SYS_ToBSTR@4
  PUSH   eax
  CALL   dword [esp+4]
  SUB    esp,4
extrn _SysFreeString@4 <-- TB Sees it here and copies/renames it since it's not expecting it.
  CALL  _SysFreeString@4
  JMP   _EndProcedure5
; EndProcedure
  XOR    eax,eax
_EndProcedure5:
  ADD    esp,4
  RET
}



It looks like it should be a fairly easy fix, but I'm a bit concerned that its there in pbcompilers output...

By the way: it works in x64 (no stray Extrn)

However, as this isn't specific to the new MultiLib feature, I think you should have started another topic.

_________________
Demonio Ardente

Currently managing Linux & OS X Tailbite
OS X TailBite now up to date with Windows!


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat Feb 07, 2009 5:54 am 
Offline
Addict
Addict

Joined: Sun May 15, 2005 5:15 am
Posts: 1027
Location: Australia
@mback2k: fixed it here - the part of TB that filters it out was commented.

@ABBKlaus: Are you able to explain why it was commented?
The section:
Code:
If LCase(LTrim(Left(ThisLine$, 6)))="extrn "
  ; !Extrn bugfix found by mpz
  ; ABBKlaus 14.10.2008 21:45
 
  ThisLine$ = "; "+ThisLine$
EndIf

The ThisLine$ = was the commented line.

_________________
Demonio Ardente

Currently managing Linux & OS X Tailbite
OS X TailBite now up to date with Windows!


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat Feb 07, 2009 9:14 am 
Offline
Enthusiast
Enthusiast
User avatar

Joined: Sun Dec 02, 2007 12:11 pm
Posts: 256
Location: Germany
The problem is, if I comment those lines out from the ASM output and rebuild the userlib with the batch file, pbcompiler won't let me compile something that uses the userlib and claims that this export is missing.

There seems to be a reason why it is there.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat Feb 07, 2009 11:19 am 
Offline
Addict
Addict

Joined: Sun May 15, 2005 5:15 am
Posts: 1027
Location: Australia
the only line that should need to be commented in the ASM is the extrn in the procedure part, it should work then.

The HelloWorld.asm should look like this when the line is commented: (This is what is generated with the fixed TB)
Code:
format MS COFF

Public PB_HelloWorld


Extrn _SYS_ToBSTR@4
Extrn _SysFreeString@4
Extrn mback2k_Testproc
Extrn mback2k__S1


section '.text' code readable executable

PB_HelloWorld:
PS4=8
XOR    eax,eax
PUSH   eax
; Test.Testproto = @Testproc()
LEA    eax,[mback2k_Testproc]
MOV    dword [esp],eax
; ProcedureReturn Test("Hello World")
PUSH   dword mback2k__S1
CALL  _SYS_ToBSTR@4
PUSH   eax
CALL   dword [esp+4]
SUB    esp,4
; extrn mback2k__SysFreeString@4
CALL  _SysFreeString@4
JMP   _EndProcedure5
; EndProcedure
XOR    eax,eax
_EndProcedure5:
ADD    esp,4
RET

_________________
Demonio Ardente

Currently managing Linux & OS X Tailbite
OS X TailBite now up to date with Windows!


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat Feb 07, 2009 11:20 am 
Offline
Enthusiast
Enthusiast
User avatar

Joined: Sun Dec 02, 2007 12:11 pm
Posts: 256
Location: Germany
Yep, thats what I did yesterday. Can you test if you are able to compile something that uses the generated procedure from the userlib?


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat Feb 07, 2009 11:22 am 
Offline
Addict
Addict

Joined: Sun May 15, 2005 5:15 am
Posts: 1027
Location: Australia
Yep, works fine here - I always test after a successful TB compile.
I just did
Code:
Debug HelloWorld()
If I recall correctly

_________________
Demonio Ardente

Currently managing Linux & OS X Tailbite
OS X TailBite now up to date with Windows!


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sun Feb 08, 2009 9:18 pm 
Offline
Addict
Addict

Joined: Sat Apr 10, 2004 1:20 pm
Posts: 1143
Location: Germany
lexvictory wrote:
Do you still have a copy of Inc_OS_Linux.pb?
I dont think there was one.

lexvictory wrote:
I'm guessing you understood it, but i meant "status text" not "status test"
Not sure how that one slipped through lol
Don´t worry just enable enableexplicit for teXt writing ;-)

mback2k wrote:
I just have one problem: As soon as I use the .p-bstr pseudotype I get the following error, because it does put the "extrn" declaration into the EndProcedure code again.

I already made a fix for this, please redownload the current beta build here : http://www.tailbite.com/downloads/TailBiteV1.3PR1.880.zip

lexvictory wrote:
@ABBKlaus: Are you able to explain why it was commented?

it was commented because of this problem by mpz : http://www.purebasic.fr/english/viewtopic.php?p=263222#263222
just uncommenting isnt a solution, a decision must be made to include it or not.
In this case i decided to comment all "extrn _sys*" :
Line 944 of Inc_TailBite.pb:
Code:
                          If ch$=" " Or ch$="," Or ch$="[" Or ch$="+" Or ch$="-"
                            If LTrim(LCase(Left(ThisLine$,6)))="extrn " And FindString(LCase(ThisLine$),"_sys",7)
                              ;do not rename PB functions like _sys* ABBKlaus 8.2.2008 16:50
                            Else
                              rem=FindString(ThisLine$,";",1)
                              If rem=0
                                rem=Len(ThisLine$)+1
                              EndIf
                              THS$ = Left(ThisLine$, vPos-1)
                              ;-* decoration (symbols)
                              THS$+LibName$+decoration+"_"+Right(ThisLine$, Len(ThisLine$)-vPos+1)
                              ThisLine$ = THS$
                              vPos+Len(LibName$+decoration+"_")
                            EndIf
                          EndIf

Line 989 of Inc_TailBite.pb:
Code:
          If LCase(LTrim(Left(ThisLine$, 6)))="extrn "
            ; !Extrn bugfix found by mpz
            ; http://www.purebasic.fr/english/viewtopic.php?p=263222#263222
            ; ABBKlaus 14.10.2008 21:45
            If FindString(LCase(ThisLine$),"_sys",7)
              ThisLine$ = "; "+ThisLine$
            EndIf
          EndIf


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Mon Feb 09, 2009 12:24 am 
Offline
Addict
Addict

Joined: Sun May 15, 2005 5:15 am
Posts: 1027
Location: Australia
ABBKlaus wrote:
I dont think there was one.

I made one ;) and made some changes to Inc_OS_Win.pb

ABBKlaus wrote:
Don´t worry just enable enableexplicit for teXt writing ;-)

:lol:

ABBKlaus wrote:
it was commented because of this problem by mpz : http://www.purebasic.fr/english/viewtopic.php?p=263222#263222

I see, I had a feeling it would be something like that.

I had to use diff to make those changes to my sources - as I've changed an awful lot to enable cross compatibility. :twisted:
Examples:
Code:
;Inc_OS_Win.pb
#DirSeparator = ""
#SystemExeExt = ".exe"
#SystemEOL = #CRLF$
#SystemHelpExt = ".chm"
#SystemBatchExt = ".bat"

#Switch_Commented = "/COMMENTED"
#Switch_Unicode = "/UNICODE"
#Switch_ThreadSafe = "/THREAD"
#Switch_InlineASM = "/INLINEASM"
#Switch_Executable = "/EXE"
#Switch_StandBy = "/STANDBY"
#Switch_SubSystem = "/SUBSYSTEM"
#Switch_Version = "/VERSION"
#Switch_Resident = "/RESIDENT"
#Switch_Debugger = "/DEBUGGER"

#Asm_Format = "MS COFF"
#Asm_Formatx64 = "MS64 COFF"
#Asm_TextSection = "section '.text' code readable executable"


Has SourceForge notified you that the project is approved and ready? Because the project page exists already...
Btw: I remember offering a while ago to make the website multilingual, I made an example here: http://demonioardente.users.sourceforge ... plate.html (I copied the existing template layout/colours and stretched it out, as it leaves a lot of empty space on my monitor without)

_________________
Demonio Ardente

Currently managing Linux & OS X Tailbite
OS X TailBite now up to date with Windows!


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Mon Feb 09, 2009 9:07 pm 
Offline
Addict
Addict

Joined: Sat Apr 10, 2004 1:20 pm
Posts: 1143
Location: Germany
lexvictory wrote:
Has SourceForge notified you that the project is approved and ready? Because the project page exists already...
The project is up and runnning, i already added you as member.

lexvictory wrote:
Btw: I remember offering a while ago to make the website multilingual
The problem is i´m using CMSimple and that restricts me in doing such changes.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue Feb 10, 2009 1:32 am 
Offline
Addict
Addict

Joined: Sun May 15, 2005 5:15 am
Posts: 1027
Location: Australia
ABBKlaus wrote:
The project is up and runnning, i already added you as member.

Thanks, but you didn't need to set me as an admin - but naturally your choice.
And sorry if I seemed nagging/impatient - I have too much free time at the moment, as Uni doesn't start until later this month.
Shall I merge in the linux/cross-compatible code? (I ask because quite a few things have been changed to constants (see my last post), nothing else really major - but I still think you should be aware of it :))
It still compiles windows libs like normal. All it means is that you need to (try) use the new constants instead of #crlf$ for example, and preferably lowercase for paths - as linux is case sensitive where windows is not
But if you don't end up using them, I'll change them before compiling a linux version :wink:
The only other real change I made was to add another testmode constant, because I needed the /DONT parameter on linux to begin with.

ABBKlaus wrote:
The problem is i´m using CMSimple and that restricts me in doing such changes.

Ok, I'll drop it, it's not really important - although I use the cheater's way with the droopy site, the whole page content is just one block of text in the translator interface lol

_________________
Demonio Ardente

Currently managing Linux & OS X Tailbite
OS X TailBite now up to date with Windows!


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Wed Feb 11, 2009 8:48 am 
Offline
Addict
Addict

Joined: Sat Apr 10, 2004 1:20 pm
Posts: 1143
Location: Germany
lexvictory wrote:
Shall I merge in the linux/cross-compatible code?
Yes, please :mrgreen:


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 35 posts ]  Go to page Previous  1, 2, 3  Next

All times are UTC + 1 hour


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  

 


Powered by phpBB © 2008 phpBB Group
subSilver+ theme by Canver Software, sponsor Sanal Modifiye