AnyCPU http://anycpu.org/forum/ |
|
PLASMA virtual machine on the OPC6 http://anycpu.org/forum/viewtopic.php?f=3&t=426 |
Page 4 of 4 |
Author: | hoglet [ Tue Aug 15, 2017 9:26 pm ] |
Post subject: | Re: PLASMA virtual machine on the OPC6 |
SteveF wrote: Dave - I see you're busy with the C64 port and probably other stuff as well, would you be willing to have a go at creating such a version of b-em, please? If not I can have a go at it myself. I'm also quite happy to break off development of the OPC6 port temporarily if you're interested in doing this but not right now. I might not be able to look at this seriously until next week (as I'm meant to be painting this week). Dave |
Author: | SteveF [ Tue Aug 15, 2017 9:34 pm ] |
Post subject: | Re: PLASMA virtual machine on the OPC6 |
Thanks Dave, if you could take a look next week that would be great - as I say I'm quite happy to put this port on hold temporarily, I have visitors coming this weekend anyway and it would give me a chance to do some tidying up on the Acorn port of PLASMA/the VideoNuLA version of STEM too. |
Author: | BigEd [ Tue Aug 15, 2017 9:36 pm ] |
Post subject: | Re: PLASMA virtual machine on the OPC6 |
It's a milestone Steve - well done! Even standalone with I/O would be a good HLL demonstrator. |
Author: | SteveF [ Tue Aug 15, 2017 9:46 pm ] |
Post subject: | Re: PLASMA virtual machine on the OPC6 |
Well we can certainly do that much. Code: steven@riemann:~/src/PLASMA-opc6$ cat hello.pla word i asm putc pop r10, restk push r10, restk out r10, r0, charout mov pc, rlink end asm putln EQU charout, 0xfe09 mov r10, r0, 10 out r10, r0, charout mov r10, r0, 13 out r10, r0, charout ;* We must return a value; we just return zero. push r0, restk mov pc, rlink end def puts(str) byte len, c len = ^str while len > 0 str++ putc(^str) len-- loop end def puti(i) if i < 0; putc('-'); i = -i; fin if i < 10 putc(i + '0') else puti(i / 10) putc(i % 10 + '0') fin end def hello(i) word j puts("Hello AnyCPU! ") for j = i to i + 5 puti(j) putc(' ') next putln() end for i = 1 to 10 hello(i) next done steven@riemann:~/src/PLASMA-opc6$ ./doit.sh hello.pla [...] steven@riemann:~/src/PLASMA-opc6$ python output.py emuout.txt Hello AnyCPU! 1 2 3 4 5 6 Hello AnyCPU! 2 3 4 5 6 7 Hello AnyCPU! 3 4 5 6 7 8 Hello AnyCPU! 4 5 6 7 8 9 Hello AnyCPU! 5 6 7 8 9 10 Hello AnyCPU! 6 7 8 9 10 11 Hello AnyCPU! 7 8 9 10 11 12 Hello AnyCPU! 8 9 10 11 12 13 Hello AnyCPU! 9 10 11 12 13 14 Hello AnyCPU! 10 11 12 13 14 15 I must admit I'm quite chuffed to have got this far. Thanks to you all for your help... |
Author: | Revaldinho [ Tue Aug 15, 2017 10:00 pm ] |
Post subject: | Re: PLASMA virtual machine on the OPC6 |
Steve, this is great. Well done. I'm looking forward to having a go at some Plasma programming. Rich |
Author: | BigEd [ Wed Aug 16, 2017 8:00 am ] |
Post subject: | Re: PLASMA virtual machine on the OPC6 |
Excellent! |
Author: | MichaelM [ Fri Aug 18, 2017 12:36 am ] |
Post subject: | Re: PLASMA virtual machine on the OPC6 |
Very cool indeed! |
Page 4 of 4 | All times are UTC |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |