I wish for a better quality Linux compiler.

Got an idea for enhancing PureBasic? New command(s) you'd like to see?
User avatar
heartbone
Addict
Addict
Posts: 1058
Joined: Fri Apr 12, 2013 1:55 pm
Location: just outside of Ferguson

I wish for a better quality Linux compiler.

Post by heartbone »

I had been using another BASIC compiler in Windows® and it was doing the job I needed.
Way back in 2003 I released a networked 3-D tank game using that compiler (it even supports 28K phone to phone modem play).
However I've been watching PureBasic for a long time, and I purchased the PureBasic compiler specifically because it claimed to compile their command set for the Linux OS.

I'm not asking for anything out of the ordinary, I am not suggesting any new features.
But I am asking for responsible behavior from those who are responsible.

Based on my observations and experiences I think most of the persistent PureBasic bugs in Linux are in two categories;
- Honest programming mistakes.
- Functions built with incomplete code that was known to need a later fix. :cry:

Let us assume that Fantaisie has an actual list of tasks that need to be done.
Once the developers (like all developers want to do) have fixed the quick and easy bugs, this is my

SUGGESTED BUG FIX PRIORITY FOR ALL PUREBASIC COMPILERS
1) properly implement all graphics functionality (including console features)
2) properly implement all peripheral functionality (audio/keyboard/mouse/gamepad/networking/port communications)


After all the bugs above that are known how to fix have been fixed, then and only then come the fixes to
*) items unique to PB such as Gadget & IDE functionality, specialized BASIC commands.

I give the Windows® compiler an A, and not much work seems necessary there.
However, your BASIC compiler is a big mess in Linux, a solid D.

IMO as a technology company, your biggest question should be
'Does Spider Basic development come before or after *) ?'.
You can be assured that this is the first and last time that I will make this request/suggestion/wish.
You may be annoyed, but so am I, and that fact should not be a factor in this "tech support" issue.
Keep it BASIC.
User avatar
Rescator
Addict
Addict
Posts: 1769
Joined: Sat Feb 19, 2005 5:05 pm
Location: Norway

Re: I wish for a better quality Linux compiler.

Post by Rescator »

You may not have noticed this but Fred (and Freak) has said in the past that feature parity is one of the main goals for the PureBasic cross-platform releases.
LuCiFeR[SD]
666
666
Posts: 1033
Joined: Mon Sep 01, 2003 2:33 pm

Re: I wish for a better quality Linux compiler.

Post by LuCiFeR[SD] »

Heartbone.... for once I am not gonna come out with something intended to annoy you, but an ice cold fact. The priority system with PB bug fixes is pretty simple. If the masses grumble, it gets fixed quickly. if it is just one or two people it affects, it will be left to rot unless it is a very easy fix. And in no way am I showing any disrespect to the PB team here with that statement... or even to you heartbone.

The fact of the matter is the majority will always get priority. Linux or OSX is not "top priority" . Windows will always get the most love and attention as that is where most of the paying users are, and I sincerely wish it was not the case. I've reported bugs and had them verified as bug and 3 years later they are still there! But alas, this is just one of those things... unless everybody jumps on the bandwagon so to speak and complains that X,Y,Z bug is a problem... it will just fall through the cracks in the floorboards. Not everybody writes games, or needs sprites or needs screenmodes to be changed on the fly.
User avatar
heartbone
Addict
Addict
Posts: 1058
Joined: Fri Apr 12, 2013 1:55 pm
Location: just outside of Ferguson

Re: I wish for a better quality Linux compiler.

Post by heartbone »

LuCiFeR[SD] wrote:Heartbone.... for once I am not gonna come out with something intended to annoy you, but an ice cold fact. The priority system with PB bug fixes is pretty simple. If the masses grumble, it gets fixed quickly. if it is just one or two people it affects, it will be left to rot unless it is a very easy fix. And in no way am I showing any disrespect to the PB team here with that statement... or even to you heartbone.

The fact of the matter is the majority will always get priority. Linux or OSX is not "top priority" . Windows will always get the most love and attention as that is where most of the paying users are, and I sincerely wish it was not the case. I've reported bugs and had them verified as bug and 3 years later they are still there! But alas, this is just one of those things... unless everybody jumps on the bandwagon so to speak and complains that X,Y,Z bug is a problem... it will just fall through the cracks in the floorboards. Not everybody writes games, or needs sprites or needs screenmodes to be changed on the fly.
Thanks for the on topic, helpful, and factual reply.
It is a deplorable situation, but there is nothing else that I can do about it, it is what it is.
I like their model of releasing free code for the enthusiasts to debug, and I wish I could generate enthusiasm about participating in the process.
But any desire that I might have to do so is tempered by the cavalier attitude shown towards addressing serious reported problems in the existing "supported" functions.
It is what it is.
Again I thank you for your posted observation about this unfortunate situation.
Rescator wrote:You may not have noticed this but Fred (and Freak) has said in the past that feature parity is one of the main goals for the PureBasic cross-platform releases.
Actions speak much louder than posted words.
Keep it BASIC.
John Duchek
User
User
Posts: 83
Joined: Mon May 16, 2005 4:19 pm
Location: St. Louis, MO

Re: I wish for a better quality Linux compiler.

Post by John Duchek »

I bought this years ago because it had a linux compiler. I use linux mainly but wanted to have my programs available in windows. I found early on the linux compiler doesn't really work right. Thus, I lurk here, but can't really use pure effectively.

John
John R. Duchek
St. Louis,MO
Fred
Administrator
Administrator
Posts: 18153
Joined: Fri May 17, 2002 4:39 pm
Location: France
Contact:

Re: I wish for a better quality Linux compiler.

Post by Fred »

Did you reported misbehaviours in the linux bug forum ?
User avatar
langinagel
Enthusiast
Enthusiast
Posts: 131
Joined: Fri Jan 28, 2005 11:53 pm
Location: Germany
Contact:

Re: I wish for a better quality Linux compiler.

Post by langinagel »

As Fred already asked: what is actually the bug?

And from my tiny experience just the comment:
OK, not all really necessary libraries are checked by the checkinstall.sh script. If you have further special need on audio, video and other special functions, install all libraries of the marked SDL, GTK2 , whatever-series. Then check back, what is left.

If you are annoyed that function parameters do not have the same interpretation as in windows, write a macro / compilerif.

And if you think you might find a better Linux + Windows compiler try whatever Basic or other language. There are many claims but few evidence around.
The problem with the bug handling is depending on the crowds behavior? Well, there IS at least a remarkable bugfixing for Purebasic. I tried other Basics where the shop seemed to be the only living part.
https://www.doerpsoft.org

Boost. Work. Efficiency.
User avatar
Kuron
Addict
Addict
Posts: 1626
Joined: Sat Oct 17, 2009 10:51 pm
Location: Pacific Northwest

Re: I wish for a better quality Linux compiler.

Post by Kuron »

heartbone: I can understand your frustrations. Unfortunately, if you want a BASIC for Linux, there are not a lot of options out there, especially for games. You really only have PureBasic and BlitzMax, and for both languages, Linux is the weakest link for reasons others have stated in this thread.
Best wishes to the PB community. Thank you for the memories. ♥️
User avatar
heartbone
Addict
Addict
Posts: 1058
Joined: Fri Apr 12, 2013 1:55 pm
Location: just outside of Ferguson

Re: I wish for a better quality Linux compiler.

Post by heartbone »

langinagel wrote:As Fred already asked: what is actually the bug?

And from my tiny experience just the comment:
OK, not all really necessary libraries are checked by the checkinstall.sh script. If you have further special need on audio, video and other special functions, install all libraries of the marked SDL, GTK2 , whatever-series. Then check back, what is left.

If you are annoyed that function parameters do not have the same interpretation as in windows, write a macro / compilerif.

And if you think you might find a better Linux + Windows compiler try whatever Basic or other language. There are many claims but few evidence around.
The problem with the bug handling is depending on the crowds behavior? Well, there IS at least a remarkable bugfixing for Purebasic. I tried other Basics where the shop seemed to be the only living part.
It's not "the bug", there are several.
Let's deal with the biggest… and to that end, just for you, I have written the following code to expand your experiences.
The following code works in Windows®,
but presents a challenge to make it function correctly in Linux when changing from full screen to windowed mode.
I have given up on trying to resize a borderless windowed screen as a workaround.
langinagel, (or any PureBasic guru) if you can find a macro/compilerif work around for this deficiency I would be pleased,
because not having uberbasic graphics window/full screen switching functionality for the Linux programs sucks big time.

Code: Select all

; ********************************
; ***** COORDINATE DISPLAYER *****
; ****** September 10, 2014  *****
; ********************************
Global FULL
STARTINFULL= 0  ; =0  START PROGRAM IN WINDOWED MODE, =1 START PROGRAM IN FULL SCREEN MODE

Procedure CLEARQUESC()
; EMPTIES XEVENT QUEUE AND RETURNS 1 WHEN ESCAPE KEY IS PRESSED
   ESCAPE= 0 : ExamineKeyboard() : If KeyboardPushed(#PB_Key_Escape) : ESCAPE= 1 : EndIf
   If Not FULL
      Repeat 
         X= WindowEvent() : If X = #PB_Event_CloseWindow : End : EndIf   
      Until X = 0   
   EndIf   
   ProcedureReturn ESCAPE
EndProcedure

Procedure GETOFFKEY()
; EXECUTION STAYS IN THIS PROCEDURE UNTIL USER RELEASES ALL KEYBOARD KEYS
   ONKEY= 1  
   Repeat
      Delay(20) : CLEARQUESC() : ExamineKeyboard() 
      If Not KeyboardPushed(#PB_Key_All) : ONKEY= 0 :EndIf         
   Until Not ONKEY
EndProcedure

; MAIN LOOP INITIALIZATION 
LoadFont(1,"Arial",19,#PB_Font_Bold|#PB_Font_HighQuality)
#FLAGS= #PB_Window_ScreenCentered|#PB_Window_MinimizeGadget
; SETUP DEVICES 
InitSprite()
If STARTINFULL
   FULL= 1 : OpenScreen(800,600,32,"SOFTWARE") 
   SPACMES$= "PRESS THE SPACE BAR FOR WINDOW"
Else    
   FULL= 0 : OpenWindow(0,0,0,800,600,"SOFTWARE",#FLAGS)
   OpenWindowedScreen(WindowID(0),0,0,800,600,#True,0,0)
   SPACMES$= "PRESS SPACE BAR FOR FULL SCREEN"
EndIf
InitKeyboard() : InitSound() : NUMJOY= InitJoystick() : JX0= 0 : JY0= 0
; END DEVICE INITIALIZATIONS, INITIALIZE INTERFACE CONTROL VARIABLES
MX= 799 : MY= 599 : PX= Random(MX) : PY= Random(MY)
BYEBYE= 0     ; PROGRAM WILL END WHEN BYEBYE IS SET
SPACMES= ElapsedMilliseconds()+ 5000   ; DISPLAY WINDOW TOGGLE MESSAGE FOR FIVE SECONDS
ACC= 200 ; INITIAL CURSOR MOVE DELAY 
Repeat ; THE PROGRAM'S MAIN LOOP STARTS HERE
   RELEASE= ElapsedMilliseconds()+ ACC   ; LIMITS LOOP SPEED TO 5 Hz
; GATHER THIS LOOP ITERATION'S USER INPUT STATE VARIABLES FROM SYSTEM 
   ExamineKeyboard()
   If NUMJOY : ExamineJoystick(0)
      JX0= JoystickAxisX(0,0,#PB_Absolute) + JoystickAxisX(0,1,#PB_Absolute) + JoystickAxisX(0,2,#PB_Absolute)
      JY0= -JoystickAxisY(0,0,#PB_Absolute) + JoystickAxisY(0,1,#PB_Absolute) + JoystickAxisY(0,2,#PB_Absolute)
   EndIf  
; PROCESS USER INPUT           
   If KeyboardPushed(#PB_Key_Escape) : BYEBYE+ 1 : EndIf  ; EXIT PROGRAM UNCONDITIONALLY WHEN USER PRESSES ESCAPE   
   If KeyboardPushed(#PB_Key_Space)    ; TOGGLE WINDOW
      GETOFFKEY() : CloseScreen() 
      If FULL
         FULL= 0 : OpenWindow(0,0,0,800,600,"SOFTWARE",#FLAGS)
         OpenWindowedScreen(WindowID(0),0,0,800,600,#True,0,0) : CLEARQUESC()
      Else 
         FULL= 1 : OpenScreen(800,600,32,"SOFTWARE")
      EndIf
   EndIf
; HERE COORDINATE THE ARROW KEYS/GAMEPAD TRACKING 
   UP= 0 : RIGHT= 0 : DOWN= 0 : LEFT= 0  
   If KeyboardPushed(#PB_Key_Up) Or (JY0 = 1) : UP= 1 : EndIf
   If KeyboardPushed(#PB_Key_Right) Or (JX0 = 1) : RIGHT= 1 : EndIf
   If KeyboardPushed(#PB_Key_Down) Or (JY0 = -1) : DOWN= 1 : EndIf
   If KeyboardPushed(#PB_Key_Left) Or (JX0 = -1) : LEFT= 1 : EndIf
   If UP+RIGHT+DOWN+LEFT > 0 
      RELEASE= ElapsedMilliseconds()+ ACC
      If ACC > 20 : ACC-20 : EndIf
      If UP
         If PY > 0 : PY-1 : EndIf 
      Else
         If DOWN
            If PY < MY : PY+1 : EndIf
         EndIf
      EndIf
      If LEFT
         If PX > 0 : PX-1 : EndIf 
      Else
         If RIGHT
            If PX < MX : PX+1 : EndIf
         EndIf
      EndIf
   Else 
      ACC= 200
   EndIf
; EMPTY EVENT QUEUE ONE LAST TIME BEFORE GRAPHICS CONSTRUCTION
   CLEARQUESC()    
; POPULATE THE 800x600 SCREEN BASED ON PX, PY POINTER VARIABLES 
   StartDrawing(ScreenOutput()) : DrawingMode(#PB_2DDrawing_Transparent) : DrawingFont(FontID(1)) 
   Box(0,0,800,600,$111144)
   DrawText(40,40,"(0,0)",$8888FF) : LineXY(40,40,0,0,$8888FF)
   DrawText(40,530,"(0,599)",$8888FF) : LineXY(40,560,0,599,$8888FF)
   DrawText(675,40,"(799,0)",$8888FF) : LineXY(752,40,799,0,$8888FF) 
   DrawText(650,530,"(799,599)",$8888FF) : LineXY(760,560,799,599,$8888FF) 
   Box(250,225,275,110,$000000)
   DrawText(275,250,"Pointer's X @ "+Str(PX),$8888FF)
   DrawText(275,280,"Pointer's Y @ "+Str(PY),$8888FF)
   If ElapsedMilliseconds() < SPACMES : DrawText(145,530,SPACMES$,$333377) : EndIf
; MAKE CROSSHAIR POINTER
   If PY > 10 And PX > 0 And PX < 799 : Box(PX-1,PY-11,3,10,$FFFFFF) : EndIf
   If PY < 589 And PX > 0 And PX < 799 : Box(PX-1,PY+1,3,10,$FFFFFF) : EndIf
   If PX > 10 And PY > 0 And PY < 599 : Box(PX-11,PY-1,10,3,$FFFFFF) : EndIf
   If PX < 789 And PY > 0 And PY < 599 : Box(PX+1,PY-1,10,3,$FFFFFF) : EndIf
   StopDrawing() : FlipBuffers()    
; LOOP SPEED LIMIT 
   If ElapsedMilliseconds() < RELEASE 
      Repeat : Delay(2) : Until ElapsedMilliseconds() > RELEASE
   EndIf
Until BYEBYE
End
Kuron wrote:heartbone: I can understand your frustrations. Unfortunately, if you want a BASIC for Linux, there are not a lot of options out there, especially for games. You really only have PureBasic and BlitzMax, and for both languages, Linux is the weakest link for reasons others have stated in this thread.
I do not believe the reasons as posted in this thread are technically valid.
If financial factors are truly involved in the tech support prioritization, then Linux is likely doomed to perpetual poor support.
Keep it BASIC.
LuCiFeR[SD]
666
666
Posts: 1033
Joined: Mon Sep 01, 2003 2:33 pm

Re: I wish for a better quality Linux compiler.

Post by LuCiFeR[SD] »

heartbone wrote:I do not believe the reasons as posted in this thread are technically valid.
If financial factors are truly involved in the tech support prioritization, then Linux is likely doomed to perpetual poor support.
There are more people who are vocal about bugs in windows than there are with linux or OSX. It is purely down to volume of complaints per platform and the complexity of the fix.... nothing to do with money. You see... it's like I said to you before... When a bug is reported if only you and I suffer from it and nobody else verifies it for whatever reason (They may not write games... they may only write applications and do not want to waste their time running your example) Fred isn't exactly going to jump up and down and think "Show stopping bug". He'll just stick a post it note on his monitor and get to it if he remembers ;). now if a hundred people start complaining and saying "HEY! this isn't working!" this is more likely to be dealt with in a timely manner.

One of the biggest problems with PureBasic... well, its not so much the language or the programmers, but "WE" the users of said language... Most people will not bother with the beta's, they'll sit back and wait until it goes final. They don't want to report bugs, they would rather sit back and let other people do it for them. But the fatal flaw to this is serious bugs get missed. The amount of testers do not really cover the whole range of commands or all of the platforms the language caters for... and then a handful of us who like to go the extra mile and push the language find some show stopper(for us)... but it falls on deaf ears because we are a minority.

But in fairness to people not testing... I can understand their reluctance to participate. especially when an update can break your program(s) you have been working hard on for god knows how long. sometimes the changes are easy enough to digest. .. but on other occasions (Which made me tear my hair out for more hours than I care to think about) was changing the way (x)includeFile "" works! I genuinely could not and still cannot understand the fucked up logic to change that command after all these fucking years! It wasn't broken before.... but when you have several hundred includes which you rely upon which are shared by more than one version of the compiler. which also maybe linked to other includes in various projects.... it just becomes an epic fucking ballache. So I for one will not be going beyond the 5.2x version of PureBasic.

Sorry for going off at a tangent there heartbone. Not trying to disrupt your thread :)

Regards,
Ash.
User avatar
luis
Addict
Addict
Posts: 3893
Joined: Wed Aug 31, 2005 11:09 pm
Location: Italy

Re: I wish for a better quality Linux compiler.

Post by luis »

LuCiFeR[SD] wrote: I genuinely could not and still cannot understand the fucked up logic to change that command after all these fucking years! It wasn't broken before....
I see it the other way around, it was broken from day one.

For a further explanation on why it's changed, beyond the discussion in the thread linked above, look at this example: http://www.purebasic.fr/english/viewtop ... 24#p367924

More: http://www.purebasic.fr/english/viewtop ... =7&t=58746
"Have you tried turning it off and on again ?"
A little PureBasic review
User avatar
Kuron
Addict
Addict
Posts: 1626
Joined: Sat Oct 17, 2009 10:51 pm
Location: Pacific Northwest

Re: I wish for a better quality Linux compiler.

Post by Kuron »

LuCiFeR[SD] wrote:
heartbone wrote:I do not believe the reasons as posted in this thread are technically valid.
If financial factors are truly involved in the tech support prioritization, then Linux is likely doomed to perpetual poor support.
There are more people who are vocal about bugs in windows than there are with linux or OSX. It is purely down to volume of complaints per platform and the complexity of the fix.... nothing to do with money. You see... it's like I said to you before... When a bug is reported if only you and I suffer from it and nobody else verifies it for whatever reason (They may not write games... they may only write applications and do not want to waste their time running your example) Fred isn't exactly going to jump up and down and think "Show stopping bug". He'll just stick a post it note on his monitor and get to it if he remembers ;). now if a hundred people start complaining and saying "HEY! this isn't working!" this is more likely to be dealt with in a timely manner.

One of the biggest problems with PureBasic... well, its not so much the language or the programmers, but "WE" the users of said language... Most people will not bother with the beta's, they'll sit back and wait until it goes final. They don't want to report bugs, they would rather sit back and let other people do it for them. But the fatal flaw to this is serious bugs get missed. The amount of testers do not really cover the whole range of commands or all of the platforms the language caters for... and then a handful of us who like to go the extra mile and push the language find some show stopper(for us)... but it falls on deaf ears because we are a minority.

But in fairness to people not testing... I can understand their reluctance to participate. especially when an update can break your program(s) you have been working hard on for god knows how long. sometimes the changes are easy enough to digest. .. but on other occasions (Which made me tear my hair out for more hours than I care to think about) was changing the way (x)includeFile "" works! I genuinely could not and still cannot understand the fucked up logic to change that command after all these fucking years! It wasn't broken before.... but when you have several hundred includes which you rely upon which are shared by more than one version of the compiler. which also maybe linked to other includes in various projects.... it just becomes an epic fucking ballache. So I for one will not be going beyond the 5.2x version of PureBasic.

Sorry for going off at a tangent there heartbone. Not trying to disrupt your thread :)

Regards,
Ash.
+1

Heartbone: Like Ash alluded to, it is not just that Linux gets second fiddle, but with a multipurpose language like PureBasic, the gaming side doesn't get as much attention as the application side does. That is not unique to PB. Those of us wanting to use PB for games are in the minority. When I use PB for contract work, it is all apps and I 100% use PB commands. Personally, with game related stuff, I either use a third-party game engine with PB or I write my own and do not use the native PB gaming commands. For me, it is less frustrating.
Best wishes to the PB community. Thank you for the memories. ♥️
User avatar
heartbone
Addict
Addict
Posts: 1058
Joined: Fri Apr 12, 2013 1:55 pm
Location: just outside of Ferguson

Re: I wish for a better quality Linux compiler.

Post by heartbone »

Kuron wrote:Heartbone: Like Ash alluded to, it is not just that Linux gets second fiddle, but with a multipurpose language like PureBasic, the gaming side doesn't get as much attention as the application side does. That is not unique to PB. Those of us wanting to use PB for games are in the minority. When I use PB for contract work, it is all apps and I 100% use PB commands.
1) Games are "all apps" and they can be written with 100% PB commands. Your attempting to draw a distinction between games and apps is illusionary at best.

2) Despite your allusion, there is nothing game specific in any of the Linux bugs that I've encountered and reported.

3) In addition your inference that it's 'the gaming side' that gets second fiddle is incorrect.
I think that what you really mean to communicate in your post is that PB is mainly used to create Windows® styled windowed applications, which is probably correct.
And if you are indicating that PB running under Linux is currently unsuitable for non Windows® styled applications, then I'd also almost agree with you.

The sample application I coded above could be part of some engineering software or process control interface,
and changing the display screen size could easily be necessary functionality.
Hopefully you will admit that it's not the 'gaming side', it's the core graphics commands that should have been working YEARS ago, but simply do not.
There is no valid excuse for the sorry state of the PB Linux compiler, only lame ones, so please stop trying to invent one.
Personally, with game related stuff, I either use a third-party game engine with PB or I write my own and do not use the native PB gaming commands.
I must admit that this is the first that I've read about 'the native PB gaming commands'.
I must assume they are new for 5.30, and I will grab the latest docs to see for myself.

(a few days later...)

I see no new "gaming commands", and have decided that you must have been referring to a basic misunderstanding about the nature of BASIC commands.
I have no problem with your conceptualizing/rationalizing whatever you want to.
But it sure is frustrating to see all the nice support for the wonderful gadgets
while the basic BASIC commands languish, and then totally made up BS used to excuse it.
Keep it BASIC.
User avatar
heartbone
Addict
Addict
Posts: 1058
Joined: Fri Apr 12, 2013 1:55 pm
Location: just outside of Ferguson

Re: I wish for a better quality Linux compiler.

Post by heartbone »

Fred wrote:Did you reported misbehaviours in the linux bug forum ?
Please advise, should I bother reporting that the #PB_Window_MaximizeGadget flag is practically useless in the Linux OpenWindow() command?
It does trigger the display of a malfunctional icon.
Or would that report be considered excessive information based on the possible existence of other, perhaps related bug reports?
I've found none, but my searches only went back 3 years.
I also searched in Linux bugs for "AutoStretch OpenWindowedScreen" but only got three hits, none explicitly detailing this problem.
Keep it BASIC.
dmoc
Enthusiast
Enthusiast
Posts: 739
Joined: Sat Apr 26, 2003 12:40 am

Re: I wish for a better quality Linux compiler.

Post by dmoc »

For what it's worth, I spent a lot of time (years ago now) with PB on Windows, really enjoyed it, but now I'm strictly Linux. Most of my PB time was spent developing one application involving high performance graphics for data visualisation (so I needed graphics but not for a game). I check now and again for new PB versions and particularly the state of the Linux compiler to see if I could revive some of my old windows code. Point of this post: maybe there's a chicken & egg when it comes to Linux users?

PS: Hi Fred and others, happy to see you are still in business and thanks for continuing to make releases!

PPS: This is a fly-by post so sorry if anyone replies to it and fails to get a response back from me for several months.
Post Reply