Eric's compiler produces PASM to be run in hubexec. It's a whole different animal compared to how Chip's compiler works.
Actually, I suppose Spin2 would have to produce PASM meant to run in hubexec in a dat section with assembly instructions following an "ORGH", right?
Since that is something new, maybe there's room for a middle ground? Maybe this kind of code could resolve absolute addresses, same way in Spin2 and FastSpin?
Chip's SPIN2 is interpreted bytecode, while Fastspin is compiled.
Have you read Chip's code for the interpreter? It's not particularly long.
The interpreter is split between cog and hub.
AJL, Spin2 can also launch assembly cogs using "coginit".
Those cogs can presumable call hubexec assembly code....
Perhaps I misunderstood your original comment, or I'm nit-picking.
While PNut is the current tool to produce SPIN2 code, Chip's aim is for SPIN2 to be self-hosted; PNut produces PASM code for execution, SPIN2 currently does not.
Given SPIN2 is interpreted, then any assembly cogs would have their code produced by some other tool, e.g. PNut, or a self-hosted PASM2 Assembler.
@cgracey
I have been looking for the spin2 command list in the forums. Complete list as is complete at this time. Can you point me in that direction please.
Thanks
Martin
There are some DEBUG-displays-related things that are not documented, yet. I am working on a simplified syntax for the DEBUG displays. When that is done, which may be tomorrow, I will post a new zip file and bring the documentation up to date.
Comments
Actually, I suppose Spin2 would have to produce PASM meant to run in hubexec in a dat section with assembly instructions following an "ORGH", right?
Since that is something new, maybe there's room for a middle ground? Maybe this kind of code could resolve absolute addresses, same way in Spin2 and FastSpin?
Chip's SPIN2 is interpreted bytecode, while Fastspin is compiled.
Have you read Chip's code for the interpreter? It's not particularly long.
The interpreter is split between cog and hub.
Those cogs can presumable call hubexec assembly code....
Perhaps I misunderstood your original comment, or I'm nit-picking.
While PNut is the current tool to produce SPIN2 code, Chip's aim is for SPIN2 to be self-hosted; PNut produces PASM code for execution, SPIN2 currently does not.
Given SPIN2 is interpreted, then any assembly cogs would have their code produced by some other tool, e.g. PNut, or a self-hosted PASM2 Assembler.
@cgracey
I have been looking for the spin2 command list in the forums. Complete list as is complete at this time. Can you point me in that direction please.
Thanks
Martin
https://docs.google.com/document/d/16qVkmA6Co5fUNKJHF6pBfGfDupuRwDtf-wyieh_fbqw/edit?usp=sharing
There are some DEBUG-displays-related things that are not documented, yet. I am working on a simplified syntax for the DEBUG displays. When that is done, which may be tomorrow, I will post a new zip file and bring the documentation up to date.
Thanks for the assist.
Perfect again thanks.