@macca
1. I update MacOS to 26.2 and the Multi-Line selection of text is still not working.
2. Do you find the issue with complex structs I reported in #869
@wummi said:
@macca
1. I update MacOS to 26.2 and the Multi-Line selection of text is still not working.
2. Do you find the issue with complex structs I reported in #869
Yes, I found and fixed the issue with your complex structure, I'm going to do a release later today that should also fix the text selection issue (hopefully, can't verify myself).
Apologies if this is already raised. With Spin Tools IDE 0.50.0, I get
when hovering over .sine1, .sine2, .sine3 labels in column one, but not when hovering over label SINE. Here's my code:-
DAT { PASM2 code }
org
SINE
' Fill BUFFER with an i-q sinewave - triggered by ATN
waitatn ' wait for the go-ahead
getct _cyclestart ' mark the start time
rdlong ptrb, ptra[BUFFERPTR] ' set ptrb to point to BUFFER
push ptrb
mov _sigbuffsize, ##sigbuffsize
sub _sigbuffsize, #1
shl _sigbuffsize, #3
add ptrb, _sigbuffsize ' ptrb points to last sample in the BUFFER
rdlong _real, ptrb++
rdlong _imag, ptrb
mov _sampleangle, ##binangle
mov _binangle, _sampleangle
pop ptrb
mov _sigbuffsize, ##sigbuffsize-4 ' make allowance for preload
wrfast #0, ptrb ' set up FIFO for writing to BUFFER
rep @.sine1, #4 ' preload the cordic engine
setq _imag ' for 4 samples
qrotate _real, _binangle ' 4 x 14 = 56, the cordic processing time
add _binangle, _sampleangle
waitx #6 ' pad to be a 14 cycle loop
.sine1
rep @.sine2, _sigbuffsize ' this is a 14 cycle loop
getqx _realresult ' read back result from cordic
getqy _imagresult
wflong _realresult ' write real result into BUFFER
wflong _imagresult ' write imag result into BUFFER
setq _imag ' send another rotate to cordic
qrotate _real, _binangle
add _binangle, _sampleangle ' prepare angle for next sample
.sine2
rep @.sine3, #4 ' read the last 4 results out
getqx _realresult
getqy _imagresult
wflong _realresult ' write real result into BUFFER
wflong _imagresult ' write imag result into BUFFER
.sine3
getct _cycles
sub _cycles, _cyclestart ' mark the finish and calculate
debug(UDEC_LONG(_cycles)) ' the execution time (18456 cycles)
jmp #SINE ' and go wait for another cycle via a relative jump
@bob_g4bby said:
Apologies if this is already raised. With Spin Tools IDE 0.50.0, I get
when hovering over .sine1, .sine2, .sine3 labels in column one, but not when hovering over label SINE. Here's my code:-
Comments
@macca
1. I update MacOS to 26.2 and the Multi-Line selection of text is still not working.
2. Do you find the issue with complex structs I reported in #869
Yes, I found and fixed the issue with your complex structure, I'm going to do a release later today that should also fix the text selection issue (hopefully, can't verify myself).
Apologies if this is already raised. With Spin Tools IDE 0.50.0, I get

when hovering over .sine1, .sine2, .sine3 labels in column one, but not when hovering over label SINE. Here's my code:-
DAT { PASM2 code } org SINE ' Fill BUFFER with an i-q sinewave - triggered by ATN waitatn ' wait for the go-ahead getct _cyclestart ' mark the start time rdlong ptrb, ptra[BUFFERPTR] ' set ptrb to point to BUFFER push ptrb mov _sigbuffsize, ##sigbuffsize sub _sigbuffsize, #1 shl _sigbuffsize, #3 add ptrb, _sigbuffsize ' ptrb points to last sample in the BUFFER rdlong _real, ptrb++ rdlong _imag, ptrb mov _sampleangle, ##binangle mov _binangle, _sampleangle pop ptrb mov _sigbuffsize, ##sigbuffsize-4 ' make allowance for preload wrfast #0, ptrb ' set up FIFO for writing to BUFFER rep @.sine1, #4 ' preload the cordic engine setq _imag ' for 4 samples qrotate _real, _binangle ' 4 x 14 = 56, the cordic processing time add _binangle, _sampleangle waitx #6 ' pad to be a 14 cycle loop .sine1 rep @.sine2, _sigbuffsize ' this is a 14 cycle loop getqx _realresult ' read back result from cordic getqy _imagresult wflong _realresult ' write real result into BUFFER wflong _imagresult ' write imag result into BUFFER setq _imag ' send another rotate to cordic qrotate _real, _binangle add _binangle, _sampleangle ' prepare angle for next sample .sine2 rep @.sine3, #4 ' read the last 4 results out getqx _realresult getqy _imagresult wflong _realresult ' write real result into BUFFER wflong _imagresult ' write imag result into BUFFER .sine3 getct _cycles sub _cycles, _cyclestart ' mark the finish and calculate debug(UDEC_LONG(_cycles)) ' the execution time (18456 cycles) jmp #SINE ' and go wait for another cycle via a relative jumpEnjoying using the IDE, however, Bob
Will look at it.