Hi Charles,
as for me, there are really no problems. Being autodidactic, with Oxygenbasic and your help I learned more about programming than was possible for me with other languages. And because O2 is designed so flexible, it is still possible to add new ideas and features, as suggested by Mike, José and Brian.
I took this special approach for the puzzle because it uses a structure as argument for functions/subs and allocates and frees memory with getmemory and freememory. Using the macro get_board and the function get_shapes it is possible to fetch/store values from/to a two- and four-dimensional array using indexbase 0. (get_shapes as a macro did not work, perhaps I did something wrong). Moreover I wanted to learn more about the mciSendString and mciSendCommand functions which seem to offer a lot of application possibilities. Another goal was to apply the GetAsynckeyState function for the arrow keys, but the use for this function in a console window seems to be limited. The same goes for applying some minimal graphics in a console window, this really seems not to be possible any more.
But overall this little project was very educational for me. And therefore Oxygen is so inspirational for me. With the new update 0.2 permitting unicode extensions you opened the door to another new interesting applicability.
Roland