Looks like "Japheth" is back from his grave. :greensml:
http://www.japheth.de/JWasm.html (http://www.japheth.de/JWasm.html)
Champagne :eusa_dance:
My fattest source (RichMasm) assembles fine, in 1000 ms against 1660 for ML6.15
MasmBasic shows little problems:
pMRB equ <[4+edi.MESSAGE_RESOURCE_BLOCK]>
mov edx, pMRB.LowId --->Error A2271: structure field expected
Besides, it still expands macros inside quoted text...
But otherwise, this is good news for the assembly community :biggrin:
Hi Ficy,
Thanks for the good news :t
Yep, this are very good news. :eusa_dance:
But still no source for this release.
Dave.
Wait untill it reaches the stable version, then the source code will be released.
AFAIK that's the way Japheth does it.
Hurray! He just touched my problem (from last Dec), will be fixed in version 7! He's back!
Dave.
This is fantastic news!
I really hope we can get the CV8 debug info in and the changes Habran worked on. (This would certainly take the pressure of my own development, although I wouldn't stop just because jwasm is complete for my needs).
Quote from: johnsa on June 27, 2012, 10:17:17 PM
I really hope we can get the CV8 debug info in and the changes Habran worked on.
The wrong offset calculation of LOCALs is fixed, but if you mean the mean the manipulation of RSP before/after every INVOKE I'm not sure.
There seems to be a Bug Tracker on this issue, but Japheth stated in the comment that he don't understand what is meant.
So, the author of this Tracker should get more specific about it ...
BTW, JWasm 2.07rc2 is out ... :t
Quote from: Greenhorn on July 03, 2012, 04:12:35 AM
BTW, JWasm 2.07rc2 is out ... :t
Looks to be 2.07rc3.
James
Quote from: jcfuller on July 03, 2012, 05:43:07 AM
Looks to be 2.07rc3.
Ooops, my fault. Yes, of course I meant the rc3... :redface:
I'm referring to the RSP modification before/after every invoke as well as actual CodeView V8 format symbolic debug info in the OBJ file so you can actually debug a project :)
I spoke to Japheth and he says it might be a feature for 2.08 .. I can't stress how important it is.. I really wish it would just get done already.
the final release of 2.7 is now available ;)
japheth compiled a x64 binary of JWasm, but he states that it is slower than the x86 binary...
http://sourceforge.net/projects/jwasm/forums/forum/927109/topic/5409021 (http://sourceforge.net/projects/jwasm/forums/forum/927109/topic/5409021)
There is a preliminary "208bw" to be tested at http://www.japheth.de/Download/JWasm/ (http://www.japheth.de/Download/JWasm/)
Quote
Bugfixes:
- forward references of structures in an expression may have failed
(see regression test assume7.aso).
- if C-style expressions in runtime conditional directives were too
complicated, the generated code may have caused 'symbol not defined'
errors.
No progress...
Quoteinclude \masm32\include\masm32rt.inc
chr$ MACRO TheArgs:VARARG
LOCAL NewString, arg, TheString
arg equ <TheArgs>
TheString CATSTR arg
.DATA
NewString db TheString, 0
.CODE
EXITM <OFFSET NewString>
ENDM
right MACRO
EXITM <wrong()>
ENDM
.code
start:
inkey chr$("right()") ; ML output: right(), Jwasm output: wrong()
exit
end start
Hello,
I have made a test with my own headers.
Quote
.486
.model flat,stdcall
option casemap:none ; case sensitive
include translate.inc
include windows.sdk
includelib kernel32.lib
;.data -------> not accepted
DATA SEGMENT ;------> accepted
titre db "Adresse Email trouvé",0
.code
start:
invoke ExitProcess,0
There is more defines in the windows.sdk than in the windows.inc.
The replacement of ".data" by "DATA SEGMENT" allow a correct compilation.
Quote
JWasm v2.08rc3, Aug 9 2012, Masm-compatible assembler.
Portions Copyright (c) 1992-2002 Sybase, Inc. All Rights Reserved.
Source code is available under the Sybase Open Watcom Public License
By the way, the bug mentioned above has been fixed some time ago. Thanks Japheth :t
Some times ago ?
My post is on the
Quote
JWasm v2.08rc3, Aug 9 2012, Masm-compatible assembler.
Portions Copyright (c) 1992-2002 Sybase, Inc. All Rights Reserved.
Source code is available under the Sybase Open Watcom Public License
Not so old
I meant "my" bug, Yves. Yours seems to be related to Windows.sdk - where did you get that file? Which error messages do you get?
To JJ2007,
That file is part of the "ready to use sdk",here:
http://luce.yves.pagesperso-orange.fr/header.htm (http://luce.yves.pagesperso-orange.fr/header.htm)
clic on the SDK link
More details on the subject:
Quote
JWasm v2.08rc3, Aug 9 2012, Masm-compatible assembler.
Portions Copyright (c) 1992-2002 Sybase, Inc. All Rights Reserved.
Source code is available under the Sybase Open Watcom Public License.
test_jwasm.asm(11) : Error A2069: Segment, group or segment register expected
Need to modify ".data" by "DATA SEGMENT" and all is ok in this code
Quote
.486
.model flat,stdcall
option casemap:none ; case sensitive
include translate.inc
include windows.sdk
includelib kernel32.lib
.data ;-------> not accepted
;DATA SEGMENT ;------> accepted
titre db "Adresse Email trouvé",0
.code
start:
invoke ExitProcess,0
;-----------------------------------------------------------------------------------
;################################################################
end start
The build environment is this one:
Quote
@echo off
CLS
call C:\PROGRA~1\MICROS~1.0\Common7\Tools\vsvars32.bat
SET INCLUDE=\SDKRC7
SET PATH=%PATH%;E:\jwasm
SET FILE=test_jwasm
: -------------------------------
: if resources exist, build them
: -------------------------------
if exist %1.obj del %FILE%.obj
if exist %1.exe del %FILE%.exe
: -----------------------------------------
: assemble Appender.asm into an OBJ file
: -----------------------------------------
jwasm -coff %FILE%.asm > jwasm.txt
if errorlevel 1 goto errasm
if not exist rsrc.rc goto nores
Rc.exe /v rsrc.rc
Cvtres.exe /machine:ix86 rsrc.res
if not exist rsrc.obj goto nores
ECHO ----------------------------
ECHO ******* avec RESSOURCE ******
ECHO -----------------------------
: --------------------------------------------------
: link the main OBJ file with the resource OBJ file
: --------------------------------------------------
Link /SUBSYSTEM:WINDOWS %FILE%.obj rsrc.obj
if errorlevel 1 goto errlink
GOTO FINLINK
:nores
ECHO ---------------------------
ECHO ***** SANS ressource ******
ECHO ------------------------------
Link.exe /SUBSYSTEM:WINDOWS %FILE%.obj
:FINLINK
dir %FILE%.*
goto TheEnd
:errlink
: ----------------------------------------------------
: display message if there is an error during linking
: ----------------------------------------------------
echo.
echo There has been an error while linking this project.
echo.
goto TheEnd
:errasm
: -----------------------------------------------------
: display message if there is an error during assembly
: -----------------------------------------------------
echo.
echo There has been an error while assembling this project.
echo.
goto TheEnd
:TheEnd
pause
I use only the sdk,ddk and vc++ lib.
It's for that i calles the vsvars32.bat
I hope it's more clear now ?
Quote from: ToutEnMasm on August 11, 2012, 04:29:11 PM
To JJ2007,
That file is part of the "ready to use sdk",here:
http://luce.yves.pagesperso-orange.fr/header.htm (http://luce.yves.pagesperso-orange.fr/header.htm)
clic on the SDK link
No download link there, Yves. However, since all my sources (even the huge and complex ones) assemble just fine with JWasm, Masm 6.5, 8.0, 9.0 and 10.0, I am inclined to believe that the problem is somewhere in Windows.sdk
Quote
No download link there ???????????
the "SDK" underligned letters in BLUE must be clic that all.
The sample is perfectly compiled by ml (any versions).
The problem isn't in "Windows.sdk".
I will not have posted it,in this case.
Quote from: ToutEnMasm on August 11, 2012, 09:42:16 PM
Quote
No download link there ???????????
the "SDK" underligned letters in BLUE must be clic that all.
"SDK" underligned letters in BLUE point to http://luce.yves.pagesperso-orange.fr/header.htm#Nouveaut%C3%A9 - and that is clearly not windows.sdk., Yves :(
However, by scrolling one line up, the link becomes visible. Wow, 2339 files in the *.cab :dazzled:
My advice: forget JWasm, stick to Masm :biggrin:
If you are afraid with the 1348 files of the SDK and the masm32 samples files:
USE SCRIPT :biggrin:
Quotetest_jwasm.asm(11) : Error A2069: Segment, group or segment register expected
this error message gives a good hint. jwasm translates .DATA to
_DATA segment
assume cs:ERROR
and error A2069 can only occur with the ASSUME. Hence the reason why jwasm doesn't like your code is: there's somewhere in your SDK a text macro ERROR defined.
Workaround: define ERROR as a number, not as text. Then it's not processed by the preprocessor.
Thanks to japheth for answer.
I have found two defines for ERROR in the SDK
Quote
adoint.sdk
1062 : Error MACRO Function:REQ, args:VARARG
This one is an interface,renamed in Ierror
Wingdi.sdk and .h ERROR equ <0>
I have just put this one in comment
ALL is good now
This source file (compiled ok with ml) is richedit using OLE (photos)
I get this error
Quote
JWasm v2.08rc3, Aug 9 2012, Masm-compatible assembler.
Portions Copyright (c) 1992-2002 Sybase, Inc. All Rights Reserved.
Source code is available under the Sybase Open Watcom Public License.
invoke CoInitializeEx ,NULL, COINIT_APARTMENTTHREADED
include shlobj.sdk
richedit.asm(73) : Error A2080: Block nesting error: _TEXT
richedit.asm: 73 lines, 1 passes, 484 ms, 0 warnings, 1 errors
Quote from: ToutEnMasm on August 12, 2012, 12:44:23 AM
I have just put this one in comment
ALL is good now
No need to comment it out - to solve your namespace pollution problem, you can just call it
erreur MACRO :biggrin:
Quoteinvoke CoInitializeEx ,NULL, COINIT_APARTMENTTHREADED
include shlobj.sdk
richedit.asm(73) : Error A2080: Block nesting error: _TEXT
Ok, I downloaded your sdk and this sample.
"ready to use sdk" is perhaps a little bit euphemistic, but with some experience in this matter it's no problem at all to make it work.
The "block nesting error" is a bit misleading, because it claims _TEXT to be the segment causing trouble. In fact, it's a few "DATA SEGMENT" directives that still occur in the source files that cause this error. It's an error, because the segment is opened but never "closed" ( with a DATA ENDS directive ).
Just replace the "DATA SEGMENT" with ".data" and it should work.
Btw., the "ERROR macro" is no problem, because a macro procedure is expanded only if it occurs at position 0 or 2 (after a label, followed by a ':' ).
I am not sure to understand very well this
Quote
The "block nesting error" is a bit misleading, because it claims _TEXT to be the segment causing trouble. In fact, it's a few "DATA SEGMENT" directives that still occur in the source files that cause this error. It's an error, because the segment is opened but never "closed" ( with a DATA ENDS directive ).
Just replace the "DATA SEGMENT" with ".data" and it should work.
I don't use "DATA SEGMENT" in the richedit source code.
What is sure,is that i have several .data.
Don't take care of my last post.
There was "DATA SEGMENT" (a modify for the first problem).
I had forgotten to replace them.
This one is a problem with nested MACRO (compiled ok with ml)
Quote
;.NOLIST ;signifie: ne rien mettre dans le listing
;------ emplacement des déclarations
;.NOLIST
.486
.model flat,stdcall
option casemap:none ; case sensitive
include translate.inc
include windows.sdk
IFDEF ERROR
ECHO error defined
ENDIF
includelib kernel32.lib
;-----------------------------------------------------------
PuPo MACRO Var1, Var2
push Var2
pop Var1
ENDM
REMPLIRnmhdr MACRO hwndFrom:REQ,idFrom:REQ,message:REQ ;NMHDR
PuPo nmhdr.hwndFrom,hwndFrom
PuPo nmhdr.idFrom,idFrom
mov nmhdr.code,message
ENDM
;-----------------------------------------------------------------
.data one dd 0
two dd 5
nmhdr NMHDR <>
titre db "Adresse Email trouvé",0
.code
start:
REMPLIRnmhdr one,two,526 ;<<<<<<<<<<<<<<<error ?
PuPo one,two
invoke ExitProcess,0
;-----------------------------------------------------------------------------------
;################################################################
end start
don't accept the line:
REMPLIRnmhdr one,two,526
Quote
test_jwasm.asm(35) : Error A2102: Symbol not defined : one
PuPo(2)[test_jwasm.asm]: Macro called from
REMPLIRnmhdr(1)[test_jwasm.asm]: Macro called from
test_jwasm.asm(35): Main line code
test_jwasm.asm(35) : Error A2102: Symbol not defined : two
PuPo(2)[test_jwasm.asm]: Macro called from
REMPLIRnmhdr(2)[test_jwasm.asm]: Macro called from
test_jwasm.asm(35): Main line code
QuoteThis one is a problem with nested MACRO (compiled ok with ml)
Yes, this is a small incompatibility. It's not really related to "nested" macros, because the very same behavior also occurs with ECHO and one or two other directives. I call it "small" because it's generally not a very good idea to select argument or local names in a macro that match the names of other items in the namespace. If it works, as in your case, it kind of works "by chance" only. From a technical point of view the problem is that in jwasm the macro argument/local substitution is implemented "one level too deep". It's on my todo list to fix this, but won't happen for v2.08.
Compliments :t
Short 100-lines proggie, with MasmBasic (includes masm32rt.inc):
JWasm: *** Assembling and linking took 391 milliseconds ***
ML 6.15: *** Assembling and linking took 765 milliseconds ***
ML 10.0: *** Assembling and linking took 781 milliseconds ***
RichMasm source, 14,000 lines, with MasmBasic (includes masm32rt.inc):
JWasm: *** Assembling and linking took 1031 milliseconds ***
ML 6.15: *** Assembling and linking took 1650 milliseconds ***
ML 10.0: *** Assembling and linking took 1730 milliseconds ***
For comparison, building a tiny C proggie with VS Express takes almost ten seconds ;-)
Hi Jochen,
Quote from: jj2007 on October 06, 2012, 07:33:09 AM
Compliments :t
Short 100-lines proggie, with MasmBasic (includes masm32rt.inc):
JWasm: *** Assembling and linking took 391 milliseconds ***
ML 6.15: *** Assembling and linking took 765 milliseconds ***
ML 10.0: *** Assembling and linking took 781 milliseconds ***
RichMasm source, 14,000 lines, with MasmBasic (includes masm32rt.inc):
JWasm: *** Assembling and linking took 1031 milliseconds ***
ML 6.15: *** Assembling and linking took 1650 milliseconds ***
ML 10.0: *** Assembling and linking took 1730 milliseconds ***
For comparison, building a tiny C proggie with VS Express takes almost ten seconds ;-)
but you know: compile times are not the only point.
Gunther
Hi
I wish Radasm3 is complete Jwasm Compatible
What is the commandline settings for
Standart Builds
This is for Masm
0=Window Release,'/v "$R"',"$R.res",'/c /coff /Cp "$C"',"$C.obj",'/SUBSYSTEM:WINDOWS /RELEASE /VERSION:4.0 /OUT:$O $C $M $R',"$C.exe",'',
1=Window Debug,'/v "$R"',"$R.res",'/c /coff /Cp /Zi /Zd "$C"',"$C.obj",'/SUBSYSTEM:WINDOWS /DEBUG /VERSION:4.0 /OUT:$O $C $M $R',"$C.exe",'',
2=Console Release,'/v "$R"',"$R.res",'/c /coff /Cp "$C"',"$C.obj",'/SUBSYSTEM:CONSOLE /RELEASE /VERSION:4.0 /OUT:$O $C $M $R',"$C.exe",'',
3=Console Debug,'/v "$R"',"$R.res",'/c /coff /Cp /Zi /Zd "$C"',"$C.obj",'/SUBSYSTEM:CONSOLE /DEBUG /VERSION:4.0 /OUT:$O $C $M $R',"$C.exe",'',
4=Dll Release,'/v "$R"',"$R.res",'/c /coff /Cp "$C"',"$C.obj",'/SUBSYSTEM:WINDOWS /RELEASE /VERSION:4.0 /DLL /DEF:$D /OUT:$O $C $M $R',"$C.dll",'',
5=Dll Debug,'/v "$R"',"$R.res",'/c /coff /Cp /Zi /Zd "$C"',"$C.obj",'/SUBSYSTEM:WINDOWS /DEBUG /VERSION:4.0 /DLL /DEF:$D /OUT:$O $C $M $R',"$C.dll",'',
6=Library,'',,'/c /coff /Cp "$C"',"$C.obj",'',,'/VERBOSE /SUBSYSTEM:WINDOWS /OUT:$O $C $M',"$C.lib"
Greets,
Ok i have now all figured out
But i have a problem to build dll files
jwasm -coff "source.asm"
jwlink format windows nt dll file "source.obj" @make.rsp
My rsp
export {
Test1='Test1'
Test2='Test2'
}
Or can i use a .def like Masm?
LIBRARY source.dll
EXPORTS
Test1
Test2
Quote from: ragdog on October 30, 2012, 08:53:56 PM
Or can i use a .def like Masm?
No. This issue is covered pretty detailed on the jwlink site: http://www.japheth.de/JWlink.html (http://www.japheth.de/JWlink.html)
Thanks but i have not found about def files
Quote from: ragdog on October 30, 2012, 11:18:29 PM
Thanks but i have not found about def files
There's no direct replacement for MS link's /DEF option, which tells the linker to scan a so-called Module Definition File.
However, since the main usage of such files is to define exports, it's simple to replace them with standard linker directive
files.
Here's an example. Module Definition File MYDLL.DEF:
LIBRARY MYDLL
EXPORTS
MyFunction1
MyFunction2
MyFunction3
can be replaced by linker directive file MYDLL.RSP:
OP MODNAME=MYDLL
OP FUZZYEXPORT
EXPORT {
MyFunction1
MyFunction2
MyFunction3
}
and that file is added to JWlink's commandline with the @ directive:
jwlink format win pe dll file mydll.obj @MYDLL.RSP
Danke japheth
Hello,
I have a problem with dynamic call.
Quote
;-------- sprintf_s PROTO C :DWORD ,:DWORD ,:DWORD , :VARARG -------------------------
EXTERNDEF ADRsprintf_s:DWORD ;sprintf_s use a vararg en couldn't be call in the library
Psprintf_s TYPEDEF PROTO C :DWORD ,:DWORD ,:DWORD , :VARARG
Fsprintf_s TYPEDEF PTR Psprintf_s
sprintf_s TEXTEQU <Fsprintf_s ptr ADRsprintf_s>
.code
.LISTALL
invoke sprintf_s,addr sz_buffer,sizeof sz_buffer,write("Friendlyname : %s"), addr buffer
invoke o_printcrlf,addr sz_buffer
.NOLIST
Ml is ok
Microsoft (R) Macro Assembler Version 6.15.8803 04/07/13 10:40:24
mat_enum.asm Page 1 - 1
00000055 0000
C .LISTALL
1C LOCAL txt
00000863 1C .data
00000863 46 72 69 65 6E 1C ??002D db "Friendlyname : %s",0
64 6C 79 6E 61
6D 65 20 3A 20
25 73 00
1C align 4
000009F8 1C .code
1C EXITM <ADDR ??002D>
C invoke sprintf_s,addr sz_buffer,sizeof sz_buffer,write("Friendlyname : %s"), addr buffer
000009F8 8D 85 FFFFFEDC * lea eax, byte ptr ss:[ebp]+0DCh
000009FE 50 * push eax
000009FF 68 00000863 R * push OFFSET ??002D
00000A04 68 00000100 * push +000000100h
00000A09 68 00000301 R * push OFFSET sz_buffer
00000A0E FF 15 00000000 E * call dword ptr ADRsprintf_s
00000A14 83 C4 10 * add esp, 000000010h
C invoke o_printcrlf,addr sz_buffer
00000A17 68 00000301 R * push OFFSET sz_buffer
00000A1C E8 FFFFFB6A * call o_printcrlf
Jwasm don't agree
JWasm v2.10rc10, Apr 4 2013
mat_enum.asm
C .LISTALL
00000000 1C .data
*1C _TEXT ends
00000863 *1C _DATA segment
*1C assume cs:ERROR
1C ??002D db "Friendlyname : %s",0
1C align 4
00000000 1C .code
*1C _DATA ends
00000A13 *1C _TEXT segment
*1C assume cs:FLAT
00000A13 C invoke Fsprintf_s ptr ADRsprintf_s,addr sz_buffer,sizeof sz_buffer,ADDR ??002D, addr buffer
00000A13 * C lea eax, buffer
00000A19 * C push eax
00000A1A * C push offset ??002D
00000A1F * C push sizeof sz_buffer
00000A24 * C push offset sz_buffer
00000A29 * C call Fsprintf_s ptr ADRsprintf_s
Error A2182: Instruction operand must have size
00000A2F * C add esp, 16
00000A32 C invoke o_printcrlf,addr sz_buffer
00000A32 * C push offset sz_buffer
00000A37 * C call o_printcrlf
http://sourceforge.net/tracker/?group_id=255677&atid=1126895 is the best address to flag this problem.
I know,I have an interesing question when trying to "add new"
Quote
Error
Artifact: This ArtifactType Does Not Allow Anonymous Submissions. Please Login. .
How to login ?
Later : In the upper right corner in the page where is this message
The dynamic call has been corrected by:
Quote
JWasm v2.10rc11, Apr 8 2013
It had been done so fast :t
thanks
Yes, works fine. I even decided for advertising purposes make it on my libraries - and, if somebody wants to test the result, could download it from here (http://www.amslook.com/soft) :t
JWasm v2.11 has been released.
This version is dedicated to Friedrich August von Hayek ( "The Road to Serfdom" ) .
20-Oct-2013 09:54 works fine with my sources :t
(Hayek, really?? ::))
Quote from: japheth on October 21, 2013, 09:44:40 PM
JWasm v2.11 has been released.
Thank's.
JWAsm + POLink + POIDE is good learning/debugging environment for me!
deleted
Andreas may dedicate jWasm to whom he want. Anyway, it's an excellent tool.
Gunther
Quote from: nidud on October 22, 2013, 02:12:22 AM
The solution to this problem, Japheth, will then be to move to Norway
Malta has a much better climate, though ;-)
QuoteSo now you know "The Road to Serfdom" :biggrin:
One of my teachers was an ardent admirer of Hayek - we used to call him "paleo-liberal" :biggrin:
I wonder if anyone can argue according to its ideas (http://en.wikipedia.org/wiki/The_Emperor's_New_Clothes) or should only do so if it is within the politically correct, regardless of it is correct or not. It is usual to divide the world into good and evil and think that some respond to certain political ideas and others to the contrary. One rich and other poor , some bad, and some good ...
At this point of global crisis would be interesting to stop for a bit and think if only our ideas are correct or should at least allow a debate.
Probably not Mr. Hayek neither Mr. Keynes are 100 % accurate neither 100 % misguided. But using a Keynes' base for governments spend huge amounts of money trying to "stimulate" the economy, when what they really do is throw money away in exchange for winning some months time, I find most than irregular. Meanwhile, the super- wealthy gentlemen who buy sovereign debt are getting richer while others are becoming more indebted, and therefore poorer... and demanding that markets keep on buying our debt and thereby making us poorer .
I do not know the details for all countries, but it seems none of them have achieved bridle the deficit. And in return keep on issuing debt or print more money hoping to avoid inflation. If we look back, and compare our situation with which we had 5/6 years ago I think we would have vertigo.
Make love, not war... ;)
Quote from: jj2007 on October 22, 2013, 03:57:40 AM
Malta has a much better climate, though ;-)
I find the summers in Germany too hot for my taste, usually.
Don't think I want to live in an oven.
Quote from: nidud... ... ...
no comment :icon_mrgreen:
you wouldn't like Arizona, then - at least not the southern half
here it is, nearing halloween, and it still gets over 90F
you must be in the southern part of Germany
some of my ancestors came from Baden-Baden :P
deleted
We used to have a viable alternative to "serfdom" here in OZ, years ago if a pile of kids pooled their dole payments they could rent a house near a good surfing beach and enter into "sUrfdom". They got the suntan and lifestyle for free. Sad to say (for them) the government wised up on the deal and put an end to it. :P
sounds like one of those surfers may have been called "Hutch" :biggrin:
never tried surfing - it looks like it might be fun - and a little dangerous, maybe
more fun to watch the gals, maybe - lol
always wanted to try scuba, though
here in AZ, we don't get a lot of time on the beach
Dave,
Quote from: dedndave on November 04, 2013, 09:39:02 PM
here in AZ, we don't get a lot of time on the beach
That is in the nature of the things. :lol:
Gunther
:biggrin:
well - unless you want to call the Mohave Desert a "beach" :lol:
Dave,
Quote from: dedndave on November 05, 2013, 03:48:33 AM
:biggrin:
well - unless you want to call the Mohave Desert a "beach" :lol:
oh no. That would be a very hot beach.
Gunther
Dave,
You could always try Hawaii, they have the REAL THING[tm] there in terms of surf.
i'd probably enjoy a visit to "the islands"
but - kind of expensive over there :P
the scenery is what would get my attention - not the surf, so much
and, by scenery, i mean beautiful landscapes - lol
they also have a nice telescope that would be worth visiting