debugger on MacOS

BlitzMax Forums/BlitzMax Programming/debugger on MacOS

I'm using BlitzMax on my Mac (but don't know a great deal about the dev environment) can someone give me a clue about how to get the debugging using in BlitzMax? Obviously I'm using debugstop and compiling with debug on, but it doesn't stop.

If it is not stopping on the DebugStop, I would assume that it is not getting to that line. Try putting it as the first line in your app and see what happens e.g.

DebugStop()
	
For i = 1 To 1000000
	Print i
Next


Works fine for me.

I just purchased BlitzMax for MacOS and DebugStop is not working for me. I have XCode 1.5 installed.
I entered DebugStop into the mainloop for one of the examples and it exits without entering the Debugger. If I turn off Debug mode, the example runs, so it appears that DebugStop is simply exiting.

Do you have the most recent version of BlitzMAX installed?

I believe so. I installed it today and it reports version as 1.0 (which is a little odd since the reports versiona as 1.01).
I tried DebugStop in BlitzMAX demo too, and has same problem.

More info:
DebugStop works with a simple example:

'Keep drawing the image until you press Escape
Repeat
'Cls
DebugLog( "Trying to DebugStop" )
DebugStop();
'RuntimeError "Hay stop!"
'HumpingBlob.update
'Flip
Until KeyHit(KEY_ESCAPE)

However, the DebugStop failes in this longer example:


Strict

Const screenx=1280, screeny=1024

Type Blob
Field X,Y,r,g,b
Const size=128, sizehalf=64
Global img:TImage

Function Init()
Local divider:Float
If size=128 Then divider=64 '8x8
If size=256 Then divider=256 '16x16
If size=512 Then divider=1024 '32x32
Local lineardivider:Float
If size=128 Then lineardivider=0.5
If size=256 Then lineardivider=1
If size=512 Then lineardivider=2

'Render the gradient image
For Local r:Float=1 To size-1 Step 0.5
Local level:Float=r
level:*level
level=level/divider
SetColor level,level,level 'For blobby gradient shape
DrawOval r/2,r/2,size-r,size-r
Next

AutoMidHandle True
img=CreateImage(size,size,1,FILTEREDIMAGE)
GrabImage(img,0,0,0)
End Function
End Type



Type HumpingBlob Extends blob
Global List:TList
Field vx#,vy#

Method New()
If List=Null Then List=New TList
List.Addlast(Self)
End Method

Function Update()
For Local b:HumpingBlob=EachIn list
For Local b2:HumpingBlob=EachIn list
If b2<>b And (b2.x<>b.x Or b.x<>b2.x) Then
Local dx#=b2.x-b.x, dy#=b2.y-b.y, d1#=Sqr(dx*dx+dy*dy)
If d1<64 Then
d1=.01*(d1-40)/d1
dx:*d1
dy:*d1
b.vx:+dx
b2.vx:-dx
b.vy:+dy
b2.vy:-dy
EndIf
EndIf
Next
b.x:+b.vx
b.y:+b.vy
'If b.x<20 Or b.x>780 Or b.y<20 Or b.y>580 Then
If b.x<20 Or b.x>screenx Or b.y<20 Or b.y>screeny Then

b.y=Rand(30,screeny) ' 570)
b.x=Rand(30,screenx) ' 770)
b.vx=Rnd(-1,1)
b.vy=Rnd(-1,1)
EndIf
b.vx=b.vx*.99'+Rnd(-.5,.5)
b.vy=b.vy*.99'+Rnd(-.5,.5)
SetColor b.r,b.g,b.b
DrawImage img,b.x,b.y
Next
End Function
End Type

'Graphics 800,600
Graphics screenx, screeny, 32
blob.init
Cls

SeedRnd MilliSecs()

'Set the drawing mode
SetBlend LIGHTBLEND

For Local i=0 To 100
Local g:HumpingBlob=New HumpingBlob
g.x=Rand(10,screenx)
g.y=Rand(10,screeny)
g.vx=Rnd(-1,1)
g.vy=Rnd(-1,1)
g.r=Rand(128,255)
g.g=Rand(128,255)
g.b=Rand(128,255)
Next

'Keep drawing the image until you press Escape
Repeat
Cls
DebugLog( "Trying to DebugStop" )
DebugStop();
'RuntimeError "Hay stop!"
HumpingBlob.update
Flip
Until KeyHit(KEY_ESCAPE)

The current Version is not 1.0 or 1.01 . it is 1.06 and as i remember in the earlier versions there are problems using the debugger.
Maybe you should take a look to the update section and download the latest Core update. Then it should work.

Thanks.
Got 1.06 update. DebugStop now works correctly.