I adapted GROK's suggestion https://grok.com/share/c2hhcmQtMg_564536...04ca64c554
still way too messy
Code: (Select All)
Type MyType
s As String * 80
End Type
Dim MyVar As MyType
Dim mBlock As _MEM: mBlock = _Mem(MyVar)
Dim As Long i
For i = 0 To 9
PutDouble mBlock, i, Sqr(i + 1)
Next
For i = 0 To 9
Print GetDouble#(mBlock, i)
Next
_MemFree mBlock
' Helper to make syntax nicer
Sub PutDouble (mem As _MEM, index As Long, value As Double)
_MemPut mem, mem.OFFSET + index * 8, value
End Sub
Function GetDouble#(mem As _MEM, index As Long)
Dim v As Double
_MemGet mem, mem.OFFSET + index * 8, v
GetDouble# = v
End Function
still way too messy

